Home

rdmacreateqp

rdmacreateqp is a function in the RDMA core API used to create a queue pair (QP) for communication on an RDMA device. A QP represents a pair of communication endpoints—the send and receive contexts that participate in RDMA operations such as remote memory access and one-sided transfers. The function is typically used after obtaining a device context and a protection domain, and it serves as the primary means to initialize the hardware resources required for RDMA messaging.

In a typical workflow, an application opens the RDMA device to obtain a device context, allocates a

Once created, the QP must be transitioned through its required states (e.g., INIT, RTR, RTS) using appropriate

rdmacreateqp is part of the broader RDMA verbs ecosystem, which also includes operations for creating completion

protection
domain,
and
then
calls
rdmacreateqp
with
that
context
and
PD
along
with
a
specification
of
the
desired
QP
attributes.
These
attributes
generally
describe
capabilities
such
as
queue
depths,
the
type
of
QP
(for
example,
reliable
connected
RC,
unreliable
datagram
UD,
or
others),
and
related
parameters
relevant
to
the
underlying
hardware
and
verbs
library.
The
call
returns
a
handle
to
the
new
QP
on
success
or
an
error
code
on
failure.
verbs
or
helper
routines,
and
it
is
typically
paired
with
a
completion
queue.
Proper
memory
registration,
queue
pair
configuration,
and
synchronization
with
the
remote
peer
are
necessary
for
correct
operation.
The
exact
prototype
and
usage
can
vary
between
RDMA
libraries
and
backends,
so
developers
should
refer
to
the
specific
library’s
documentation
for
precise
details.
queues,
memory
regions,
and
protection
domains,
as
well
as
utilities
for
resolving
addresses
and
managing
connections.