'\" te .\" -*- nroff -*- .\" .TH IBV_SHARE_PD 3 2012-02-29 libibverbs "Libibverbs Programmer's Manual" .SH "NAME" ibv_share_pd \- share a protection domain (PD). .SH "SYNOPSIS" .nf .B #include .sp .BI "struct ibv_pd *ibv_share_pd(struct ibv_context " "*context" ", " .BI " struct ibv_shpd " "*shpd" ", uint64_t " "share_key"); .sp .fi .SH "DESCRIPTION" .B ibv_share_pd() shares the protection domain specified by a unique identifier .I shpd for the RDMA device context .I context\fR. .I share_key is the 64 bit key used to generate the unique identifier .I shpd\fR. .I ibv_pd\fRs created using .B ibv_share_pd() can be deallocated using .B ibv_dealloc_pd()\fR. Libibverbs keeps track of each instance of the shared PD and removes the PD from RDMA device when the last instance of the shared PD is deallocated. .SH "RETURN VALUE" .B ibv_share_pd() returns a pointer to the shared pd or NULL if the request fails. .\" Oracle has added the ARC stability level to this manual page .SH ATTRIBUTES See .BR attributes (5) for descriptions of the following attributes: .sp .TS box; cbp-1 | cbp-1 l | l . ATTRIBUTE TYPE ATTRIBUTE VALUE = Availability network/open-fabrics = Stability Volatile .TE .PP .SH "NOTES" Even though the same PD is shared by multiple contexts of an RDMA device or processes, the life span of each resource created in an 'ibv_pd' linked to a context or process is limited by the life span of that instance of 'ibv_pd'. e.g. The life span of an MR .I mr1 created under ibv_pd .I pd1 (which is an instance of shared PD .I shPD1\fR) will end whenever .I pd1 is deallocated, even though underlying .I shPD1 may continue to live on. .PP Sharing PD is not supported among 'ibv_context' created for different RDMA devices. .SH "SEE ALSO" .BR ibv_alloc_shpd (3), .BR ibv_dealloc_pd (3) .SH "AUTHORS" .TP Arun Kaimalettu .\" Oracle has added source availability information to this manual page This software was built from source available at https://java.net/projects/solaris-userland. The original community source was downloaded from ['http://download.oracle.com/otn-pub/oss/networking/libsif-1.0.tar.gz', 'http://www.openfabrics.org/downloads/ibutils/ibutils-1.5.7.tar.gz', 'http://www.openfabrics.org/downloads/libibverbs/libibverbs-1.1.4-1.22.g7257cd3.tar.gz', 'http://www.openfabrics.org/downloads/libmlx4/libmlx4-1.0.1-1.18.gb810a27.tar.gz', 'http://www.openfabrics.org/downloads/libsdp/libsdp-1.1.108-0.15.gd7fdb72.tar.gz', 'http://www.openfabrics.org/downloads/management/infiniband-diags-1.5.8.tar.gz', 'http://www.openfabrics.org/downloads/management/libibmad-1.3.7.tar.gz', 'http://www.openfabrics.org/downloads/management/libibumad-1.3.7.tar.gz', 'http://www.openfabrics.org/downloads/management/opensm-3.3.9.tar.gz', 'http://www.openfabrics.org/downloads/perftest/perftest-1.3.0-0.42.gf350d3d.tar.gz', 'http://www.openfabrics.org/downloads/qperf/qperf-0.4.6-0.1.gb81434e.tar.gz', 'http://www.openfabrics.org/downloads/rdmacm/librdmacm-1.0.14.1.tar.gz', 'http://www.openfabrics.org/downloads/rds-tools/rds-tools-2.0.4.tar.gz'] Further information about this software can be found on the open source community website at http://www.openfabrics.org/.