]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - contrib/ofed/libibverbs/man/ibv_modify_srq.3
Update OpenZFS to 2.0.0-rc3-gfc5966
[FreeBSD/FreeBSD.git] / contrib / ofed / libibverbs / man / ibv_modify_srq.3
1 .\" -*- nroff -*-
2 .\" Licensed under the OpenIB.org BSD license (FreeBSD Variant) - See COPYING.md
3 .\"
4 .TH IBV_MODIFY_SRQ 3 2006-10-31 libibverbs "Libibverbs Programmer's Manual"
5 .SH "NAME"
6 ibv_modify_srq \- modify attributes of a shared receive queue (SRQ)
7 .SH "SYNOPSIS"
8 .nf
9 .B #include <infiniband/verbs.h>
10 .sp
11 .BI "int ibv_modify_srq(struct ibv_srq " "*srq" ,
12 .BI "                   struct ibv_srq_attr " "*srq_attr" ,
13 .BI "                   int " "srq_attr_mask" );
14 .fi
15 .SH "DESCRIPTION"
16 .B ibv_modify_srq()
17 modifies the attributes of SRQ
18 .I srq
19 with the attributes in
20 .I srq_attr
21 according to the mask
22 .I srq_attr_mask\fR.
23 The argument \fIsrq_attr\fR is an ibv_srq_attr struct, as defined in <infiniband/verbs.h>.
24 .PP
25 .nf
26 struct ibv_srq_attr {
27 .in +8
28 uint32_t                max_wr;      /* maximum number of outstanding work requests (WRs) in the SRQ */
29 uint32_t                max_sge;     /* number of scatter elements per WR (irrelevant for ibv_modify_srq) */
30 uint32_t                srq_limit;   /* the limit value of the SRQ */
31 .in -8
32 };
33 .fi
34 .PP
35 The argument
36 .I srq_attr_mask
37 specifies the SRQ attributes to be modified.
38 The argument is either 0 or the bitwise OR of one or more of the following flags:
39 .PP
40 .TP
41 .B IBV_SRQ_MAX_WR \fR Resize the SRQ
42 .TP
43 .B IBV_SRQ_LIMIT \fR Set the SRQ limit
44 .SH "RETURN VALUE"
45 .B ibv_modify_srq()
46 returns 0 on success, or the value of errno on failure (which indicates the failure reason).
47 .SH "NOTES"
48 If any of the modify attributes is invalid, none of the attributes will be modified.
49 .PP
50 Not all devices support resizing SRQs.  To check if a device supports it, check if the
51 .B IBV_DEVICE_SRQ_RESIZE
52 bit is set in the device capabilities flags.
53 .PP
54 Modifying the srq_limit arms the SRQ to produce an
55 .B IBV_EVENT_SRQ_LIMIT_REACHED
56 "low watermark" asynchronous event once the number of WRs in the SRQ drops below srq_limit.
57 .SH "SEE ALSO"
58 .BR ibv_query_device (3),
59 .BR ibv_create_srq (3),
60 .BR ibv_destroy_srq (3),
61 .BR ibv_query_srq (3)
62 .SH "AUTHORS"
63 .TP
64 Dotan Barak <dotanba@gmail.com>