Go to main content

man pages section 3: Library Interfaces and Headers

Exit Print View

Updated: Wednesday, July 27, 2022
 
 

rdma_create_id (3)

Name

rdma_create_id - Allocate a communication identifier.

Synopsis

#include <rdma/rdma_cma.h>

int   rdma_create_id   (struct   rdma_event_channel   *channel,  struct
rdma_cm_id **id, void *context, enum rdma_port_space ps);

Description

Librdmacm Programmer's Manual                                RDMA_CREATE_ID(3)



NAME
       rdma_create_id - Allocate a communication identifier.

SYNOPSIS
       #include <rdma/rdma_cma.h>

       int   rdma_create_id   (struct   rdma_event_channel   *channel,  struct
       rdma_cm_id **id, void *context, enum rdma_port_space ps);

ARGUMENTS
       channel     The communication channel that events associated  with  the
                   allocated  rdma_cm_id  will  be  reported  on.  This may be
                   NULL.

       id          A reference where the  allocated  communication  identifier
                   will be returned.

       context     User specified context associated with the rdma_cm_id.

       ps          RDMA port space.

DESCRIPTION
       Creates an identifier that is used to track communication information.

RETURN VALUE
       Returns  0  on success, or -1 on error.  If an error occurs, errno will
       be set to indicate the failure reason.


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


       +---------------+-----------------------+
       |ATTRIBUTE TYPE |   ATTRIBUTE VALUE     |
       +---------------+-----------------------+
       |Availability   | network/open-fabrics  |
       +---------------+-----------------------+
       |Stability      | Pass-through volatile |
       +---------------+-----------------------+

NOTES
       Rdma_cm_id's are conceptually equivalent to a socket for RDMA  communi-
       cation.   The difference is that RDMA communication requires explicitly
       binding to a specified RDMA device before communication can occur,  and
       most operations are asynchronous in nature.  Asynchronous communication
       events on an rdma_cm_id are reported through the associated event chan-
       nel.   If  the channel parameter is NULL, the rdma_cm_id will be placed
       into synchronous operation.  While operating synchronously, calls  that
       result in an event will block until the operation completes.  The event
       will be returned to the user through the rdma_cm_id structure,  and  be
       available for access until another rdma_cm call is made.

       Users must release the rdma_cm_id by calling rdma_destroy_id.

       Source  code  for open source software components in Oracle Solaris can
       be found at https://www.oracle.com/downloads/opensource/solaris-source-
       code-downloads.html.

       This     software     was    built    from    source    available    at
       https://github.com/oracle/solaris-userland.   The  original   community
       source   was   downloaded   from    ['https://www.openfabrics.org/down-
       loads/ibutils/ibutils-1.5.7-0.2.gbd7e502.tar.gz', 'https://www.openfab-
       rics.org/downloads/libibverbs/libibverbs-1.1.8.tar.gz',
       'https://www.openfabrics.org/downloads/libmlx4/libmlx4-1.0.6.tar.gz',
       'https://www.openfabrics.org/downloads/libsdp/lib-
       sdp-1.1.108-0.15.gd7fdb72.tar.gz',   'https://www.openfabrics.org/down-
       loads/management/infiniband-diags-1.6.5.tar.gz',  'https://www.openfab-
       rics.org/downloads/management/libibmad-1.3.12.tar.gz',
       'https://www.openfabrics.org/downloads/management/libibu-
       mad-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.open-
       fabrics.org/downloads/qperf/qperf-0.4.9.tar.gz',  'https://www.openfab-
       rics.org/downloads/rdmacm/librdmacm-1.0.21.tar.gz',  'https://www.open-
       fabrics.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/.

PORT SPACE
       Details of the services provided by the different port spaces are  out-
       lined below.

       RDMA_PS_TCP
              Provides reliable, connection-oriented QP communication.  Unlike
              TCP, the RDMA port space provides  message,  not  stream,  based
              communication.

       RDMA_PS_UDP
              Provides  unreliable, connectionless QP communication.  Supports
              both datagram and multicast communication.

       RDMA_PS_IB
              Provides for any IB services (UD, UC, RC, XRC, etc.).

SEE ALSO
       rdma_cm(7),      rdma_create_event_channel(3),      rdma_destroy_id(3),
       rdma_get_devices(3), rdma_bind_addr(3), rdma_resolve_addr(3), rdma_con-
       nect(3), rdma_listen(3), rdma_set_option(3)




librdmacm                         2010-07-19                 RDMA_CREATE_ID(3)