Go to main content

man pages section 3: Library Interfaces and Headers

Exit Print View

Updated: Thursday, June 13, 2019
 
 

ibv_share_pd (3)

Name

ibv_share_pd - share a protection domain (PD).

Synopsis

#include <infiniband/verbs.h>

struct ibv_pd *ibv_share_pd(struct ibv_context *context,
struct ibv_shpd *shpd, uint64_t share_key);

Description

Libibverbs Programmer's Manual                                 IBV_SHARE_PD(3)



NAME
       ibv_share_pd - share a protection domain (PD).

SYNOPSIS
       #include <infiniband/verbs.h>

       struct ibv_pd *ibv_share_pd(struct ibv_context *context,
                                   struct ibv_shpd *shpd, uint64_t share_key);


DESCRIPTION
       ibv_share_pd() shares the protection domain specified by a unique iden-
       tifier shpd for the RDMA device context context.  share_key is  the  64
       bit  key  used to generate the unique identifier shpd.  ibv_pds created
       using ibv_share_pd() can be deallocated using ibv_dealloc_pd().  Libib-
       verbs  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  deallo-
       cated.

RETURN VALUE
       ibv_share_pd()  returns  a  pointer  to  the  shared  pd or NULL if the
       request fails.



ATTRIBUTES
       See attributes(7) for descriptions of the following attributes:


       +---------------+-----------------------+
       |ATTRIBUTE TYPE |   ATTRIBUTE VALUE     |
       +---------------+-----------------------+
       |Availability   | network/open-fabrics  |
       +---------------+-----------------------+
       |Stability      | Pass-through volatile |
       +---------------+-----------------------+
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 mr1 created
       under ibv_pd pd1 (which is an instance of shared  PD  shPD1)  will  end
       whenever  pd1 is deallocated, even though underlying shPD1 may continue
       to live on.

       Sharing PD is not supported among 'ibv_context' created  for  different
       RDMA devices.

SEE ALSO
       ibv_alloc_shpd(3), ibv_dealloc_pd(3)


AUTHORS
       Arun Kaimalettu <gotoarunk at gmail dot com>


              This    software    was   built   from   source   available   at
              https://github.com/oracle/solaris-userland.  The original commu-
              nity   source   was   downloaded   from   ['https://www.openfab-
              rics.org/downloads/ibutils/ibutils-1.5.7-0.2.gbd7e502.tar.gz',
              'https://www.openfabrics.org/downloads/libibverbs/libib-
              verbs-1.1.8.tar.gz',          'https://www.openfabrics.org/down-
              loads/libmlx4/libmlx4-1.0.6.tar.gz',       'https://www.openfab-
              rics.org/downloads/libsdp/libsdp-1.1.108-0.15.gd7fdb72.tar.gz',
              'https://www.openfabrics.org/downloads/management/infiniband-
              diags-1.6.5.tar.gz', 'https://www.openfabrics.org/downloads/man-
              agement/libibmad-1.3.12.tar.gz',           'https://www.openfab-
              rics.org/downloads/management/libibumad-1.3.10.2.tar.gz',
              'https://www.openfabrics.org/downloads/manage-
              ment/opensm-3.3.19.tar.gz',   'https://www.openfabrics.org/down-
              loads/perftest/perftest-1.3.0-0.42.gf350d3d.tar.gz',
              'https://www.openfabrics.org/down-
              loads/qperf/qperf-0.4.9.tar.gz',           'https://www.openfab-
              rics.org/downloads/rdmacm/librdmacm-1.0.21.tar.gz',
              'https://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/.



libibverbs                        2012-02-29                   IBV_SHARE_PD(3)