ibv_modify_srq(3) — Linux manual page

NAME | SYNOPSIS | DESCRIPTION | RETURN VALUE | NOTES | SEE ALSO | AUTHORS | COLOPHON

IBV_MODIFY_SRQ(3)      Libibverbs Programmer's Manual      IBV_MODIFY_SRQ(3)

NAME         top

       ibv_modify_srq - modify attributes of a shared receive queue (SRQ)

SYNOPSIS         top

       #include <infiniband/verbs.h>

       int ibv_modify_srq(struct ibv_srq *srq,
                          struct ibv_srq_attr *srq_attr,
                          int srq_attr_mask);

DESCRIPTION         top

       ibv_modify_srq() modifies the attributes of SRQ srq with the
       attributes in srq_attr according to the mask srq_attr_mask.  The
       argument srq_attr is an ibv_srq_attr struct, as defined in
       <infiniband/verbs.h>.

       struct ibv_srq_attr {
               uint32_t                max_wr;      /* maximum number of outstanding work requests (WRs) in the SRQ */
               uint32_t                max_sge;     /* number of scatter elements per WR (irrelevant for ibv_modify_srq) */
               uint32_t                srq_limit;   /* the limit value of the SRQ */
       };

       The argument srq_attr_mask specifies the SRQ attributes to be
       modified.  The argument is either 0 or the bitwise OR of one or more
       of the following flags:

       IBV_SRQ_MAX_WR  Resize the SRQ

       IBV_SRQ_LIMIT  Set the SRQ limit

RETURN VALUE         top

       ibv_modify_srq() returns 0 on success, or the value of errno on
       failure (which indicates the failure reason).

NOTES         top

       If any of the modify attributes is invalid, none of the attributes
       will be modified.

       Not all devices support resizing SRQs.  To check if a device supports
       it, check if the IBV_DEVICE_SRQ_RESIZE bit is set in the device
       capabilities flags.

       Modifying the srq_limit arms the SRQ to produce an
       IBV_EVENT_SRQ_LIMIT_REACHED "low watermark" asynchronous event once
       the number of WRs in the SRQ drops below srq_limit.

SEE ALSO         top

       ibv_query_device(3), ibv_create_srq(3), ibv_destroy_srq(3),
       ibv_query_srq(3)

AUTHORS         top

       Dotan Barak <dotanba@gmail.com>

COLOPHON         top

       This page is part of the rdma-core (RDMA Core Userspace Libraries and
       Daemons) project.  Information about the project can be found at 
       ⟨https://github.com/linux-rdma/rdma-core⟩.  If you have a bug report
       for this manual page, send it to linux-rdma@vger.kernel.org.  This
       page was obtained from the project's upstream Git repository
       ⟨https://github.com/linux-rdma/rdma-core.git⟩ on 2020-09-18.  (At
       that time, the date of the most recent commit that was found in the
       repository was 2020-09-16.)  If you discover any rendering problems
       in this HTML version of the page, or you believe there is a better or
       more up-to-date source for the page, or you have corrections or
       improvements to the information in this COLOPHON (which is not part
       of the original manual page), send a mail to man-pages@man7.org

libibverbs                       2006-10-31                IBV_MODIFY_SRQ(3)

Pages that refer to this page: ibv_create_srq(3)ibv_create_srq_ex(3)ibv_destroy_srq(3)ibv_query_srq(3)