From b72c5056598a6a33be84b30eb7a4e322a5f56f03 Mon Sep 17 00:00:00 2001 From: Roland Dreier Date: Fri, 18 Apr 2008 09:22:13 -0700 Subject: [PATCH] Update various text to talk about general RDMA, not just InfiniBand libibverbs works with both iWARP and InfiniBand devices, so update various places that talk about InfiniBand to be more general. Signed-off-by: Roland Dreier --- README | 17 +++++----- debian/changelog | 7 +++-- debian/control.in | 58 ++++++++++++++++++++--------------- libibverbs.spec.in | 18 ++++++----- man/ibv_alloc_pd.3 | 6 ++-- man/ibv_asyncwatch.1 | 2 +- man/ibv_create_ah_from_wc.3 | 2 +- man/ibv_create_comp_channel.3 | 17 +++++----- man/ibv_create_cq.3 | 2 +- man/ibv_devices.1 | 4 +-- man/ibv_devinfo.1 | 8 ++--- man/ibv_get_async_event.3 | 2 +- man/ibv_get_device_guid.3 | 4 +-- man/ibv_get_device_list.3 | 6 ++-- man/ibv_get_device_name.3 | 4 +-- man/ibv_open_device.3 | 2 +- man/ibv_query_device.3 | 2 +- man/ibv_query_port.3 | 2 +- man/ibv_query_qp.3 | 2 +- 19 files changed, 91 insertions(+), 74 deletions(-) diff --git a/README b/README index 0b1b114..848eb05 100644 --- a/README +++ b/README @@ -1,10 +1,11 @@ Introduction ============ -libibverbs is a library that allows programs to use InfiniBand "verbs" -for direct access to IB hardware from userspace. For more information -on verbs, see the InfiniBand Architecture Specification vol. 1, -especially chapter 11. +libibverbs is a library that allows programs to use RDMA "verbs" for +direct access to RDMA (currently InfiniBand and iWARP) hardware from +userspace. For more information on RDMA verbs, see the InfiniBand +Architecture Specification vol. 1, especially chapter 11, and the RDMA +Consortium's RDMA Protocol Verbs Specification. Using libibverbs ================ @@ -28,9 +29,9 @@ can be used. This will create device nodes named /dev/infiniband/uverbs0 -and so on. Since the InfiniBand userspace verbs should be safe for -use by non-privileged, you may want to add an appropriate MODE or -GROUP to your udev rule. +and so on. Since the RDMA userspace verbs should be safe for use by +non-privileged users, you may want to add an appropriate MODE or GROUP +to your udev rule. Permissions ----------- @@ -102,7 +103,7 @@ Bugs should be reported to the OpenFabrics mailing list * Information about your system: - Linux distribution and version - Linux kernel and version - - InfiniBand hardware and firmware version + - InfiniBand/iWARP hardware and firmware version - ... any other relevant information * How to reproduce the bug. Command line arguments for a libibverbs diff --git a/debian/changelog b/debian/changelog index 24582f0..896ad04 100644 --- a/debian/changelog +++ b/debian/changelog @@ -4,9 +4,12 @@ libibverbs (1.1.1-2) unstable; urgency=low * Use DEB_DH_MAKESHLIBS_ARGS_ALL to pass appropriate -V option to dh_makeshlibs, since new symbols were added in libibverbs 1.1.0. (Closes: #465435) - * Add debian/watch file + * Add debian/watch file. + * Update control file to talk about generic RDMA and iWARP, not just + InfiniBand, since libibverbs works with both IB and iWARP. + * Acknowledge NMU (Closes: #442638). - -- Roland Dreier Wed, 12 Mar 2008 10:39:38 -0700 + -- Roland Dreier Wed, 16 Apr 2008 21:35:37 -0700 libibverbs (1.1.1-1) unstable; urgency=low diff --git a/debian/control.in b/debian/control.in index 62299fd..d86c0b3 100644 --- a/debian/control.in +++ b/debian/control.in @@ -10,13 +10,15 @@ Package: libibverbs1 Section: libs Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends}, adduser -Description: A library for direct userspace use of InfiniBand - libibverbs is a library that allows userspace processes to use - InfiniBand "verbs" as described in the InfiniBand Architecture - Specification. InfiniBand is a high-throughput, low-latency - networking technology. InfiniBand host channel adapters (HCAs) - commonly support direct hardware access from userspace (kernel - bypass), and libibverbs supports this when available. +Description: A library for direct userspace use of RDMA (InfiniBand/iWARP) + libibverbs is a library that allows userspace processes to use RDMA + "verbs" as described in the InfiniBand Architecture Specification and + the RDMA Protocol Verbs Specification. iWARP ethernet NICs support + RDMA over hardware-offloaded TCP/IP, while InfiniBand is a + high-throughput, low-latency networking technology. InfiniBand host + channel adapters (HCAs) and iWARP NICs commonly support direct + hardware access from userspace (kernel bypass), and libibverbs + supports this when available. . For this library to be useful, a device-specific plug-in module should also be installed. @@ -28,12 +30,14 @@ Section: libdevel Architecture: any Depends: ${misc:Depends}, libibverbs1 (= ${binary:Version}) Description: Development files for the libibverbs library - libibverbs is a library that allows userspace processes to use - InfiniBand "verbs" as described in the InfiniBand Architecture - Specification. InfiniBand is a high-throughput, low-latency - networking technology. InfiniBand host channel adapters (HCAs) - commonly support direct hardware access from userspace (kernel - bypass), and libibverbs supports this when available. + libibverbs is a library that allows userspace processes to use RDMA + "verbs" as described in the InfiniBand Architecture Specification and + the RDMA Protocol Verbs Specification. iWARP ethernet NICs support + RDMA over hardware-offloaded TCP/IP, while InfiniBand is a + high-throughput, low-latency networking technology. InfiniBand host + channel adapters (HCAs) and iWARP NICs commonly support direct + hardware access from userspace (kernel bypass), and libibverbs + supports this when available. . This package is needed to compile programs against libibverbs1. It contains the header files and static libraries (optionally) @@ -45,12 +49,14 @@ Priority: extra Architecture: any Depends: ${misc:Depends}, libibverbs1 (= ${binary:Version}) Description: Debugging symbols for the libibverbs library - libibverbs is a library that allows userspace processes to use - InfiniBand "verbs" as described in the InfiniBand Architecture - Specification. InfiniBand is a high-throughput, low-latency - networking technology. InfiniBand host channel adapters (HCAs) - commonly support direct hardware access from userspace (kernel - bypass), and libibverbs supports this when available. + libibverbs is a library that allows userspace processes to use RDMA + "verbs" as described in the InfiniBand Architecture Specification and + the RDMA Protocol Verbs Specification. iWARP ethernet NICs support + RDMA over hardware-offloaded TCP/IP, while InfiniBand is a + high-throughput, low-latency networking technology. InfiniBand host + channel adapters (HCAs) and iWARP NICs commonly support direct + hardware access from userspace (kernel bypass), and libibverbs + supports this when available. . This package contains the debugging symbols associated with libibverbs1. They will automatically be used by gdb for debugging @@ -61,12 +67,14 @@ Section: net Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends} Description: Examples for the libibverbs library - libibverbs is a library that allows userspace processes to use - InfiniBand "verbs" as described in the InfiniBand Architecture - Specification. InfiniBand is a high-throughput, low-latency - networking technology. InfiniBand host channel adapters (HCAs) - commonly support direct hardware access from userspace (kernel - bypass), and libibverbs supports this when available. + libibverbs is a library that allows userspace processes to use RDMA + "verbs" as described in the InfiniBand Architecture Specification and + the RDMA Protocol Verbs Specification. iWARP ethernet NICs support + RDMA over hardware-offloaded TCP/IP, while InfiniBand is a + high-throughput, low-latency networking technology. InfiniBand host + channel adapters (HCAs) and iWARP NICs commonly support direct + hardware access from userspace (kernel bypass), and libibverbs + supports this when available. . This package contains useful libibverbs1 example programs such as ibv_devinfo, which displays information about InfiniBand devices. diff --git a/libibverbs.spec.in b/libibverbs.spec.in index ad57c61..b396369 100644 --- a/libibverbs.spec.in +++ b/libibverbs.spec.in @@ -1,7 +1,7 @@ Name: libibverbs Version: 1.1.1 -Release: 1%{?dist} -Summary: A library for direct userspace use of InfiniBand hardware +Release: 2%{?dist} +Summary: A library for direct userspace use of RDMA (InfiniBand/iWARP) hardware Group: System Environment/Libraries License: GPLv2 or BSD @@ -12,10 +12,11 @@ Requires(post): /sbin/ldconfig Requires(postun): /sbin/ldconfig %description -libibverbs is a library that allows userspace processes to use -InfiniBand "verbs" as described in the InfiniBand Architecture -Specification. This includes direct hardware access for fast path -operations. +libibverbs is a library that allows userspace processes to use RDMA +"verbs" as described in the InfiniBand Architecture Specification and +the RDMA Protocol Verbs Specification. This includes direct hardware +access from userspace to InfiniBand/iWARP adapters (kernel bypass) for +fast path operations. For this library to be useful, a device-specific plug-in module should also be installed. @@ -41,7 +42,7 @@ Requires: %{name} = %{version}-%{release} %description utils Useful libibverbs1 example programs such as ibv_devinfo, which -displays information about InfiniBand devices. +displays information about RDMA devices. %prep %setup -q -n %{name}-@VERSION@ @@ -83,6 +84,9 @@ rm -rf $RPM_BUILD_ROOT %{_mandir}/man1/* %changelog +* Wed Apr 16 2008 Roland Dreier - 1.1.1-2 +- Update description to mention RDMA and iWARP, not just InfiniBand + * Fri Jun 15 2007 Roland Dreier - 1.1.1-1 - New upstream release diff --git a/man/ibv_alloc_pd.3 b/man/ibv_alloc_pd.3 index 017ab32..28b7953 100644 --- a/man/ibv_alloc_pd.3 +++ b/man/ibv_alloc_pd.3 @@ -13,7 +13,7 @@ ibv_alloc_pd, ibv_dealloc_pd \- allocate or deallocate a protection domain (PDs) .fi .SH "DESCRIPTION" .B ibv_alloc_pd() -allocates a PD for the InfiniBand device context +allocates a PD for the RDMA device context .I context\fR. .PP .B ibv_dealloc_pd() @@ -27,8 +27,8 @@ returns a pointer to the allocated PD, or NULL if the request fails. returns 0 on success, or the value of errno on failure (which indicates the failure reason). .SH "NOTES" .B ibv_dealloc_pd() -may fail if any other InfiniBand resource is still associated with the -PD being freed. +may fail if any other resource is still associated with the PD being +freed. .SH "SEE ALSO" .BR ibv_reg_mr (3), .BR ibv_create_srq (3), diff --git a/man/ibv_asyncwatch.1 b/man/ibv_asyncwatch.1 index aed316d..ece25f8 100644 --- a/man/ibv_asyncwatch.1 +++ b/man/ibv_asyncwatch.1 @@ -8,7 +8,7 @@ ibv_asyncwatch \- display asynchronous events .SH DESCRIPTION .PP -Display asynchronous events forwarded to userspace for an InfiniBand device. +Display asynchronous events forwarded to userspace for an RDMA device. .SH AUTHORS .TP diff --git a/man/ibv_create_ah_from_wc.3 b/man/ibv_create_ah_from_wc.3 index 487f053..bc5d135 100644 --- a/man/ibv_create_ah_from_wc.3 +++ b/man/ibv_create_ah_from_wc.3 @@ -21,7 +21,7 @@ address handle (AH) from a work completion .B ibv_init_ah_from_wc() initializes the address handle (AH) attribute structure .I ah_attr -for the InfiniBand device context +for the RDMA device context .I context using the port number .I port_num\fR, diff --git a/man/ibv_create_comp_channel.3 b/man/ibv_create_comp_channel.3 index e0e1e68..d8e17f1 100644 --- a/man/ibv_create_comp_channel.3 +++ b/man/ibv_create_comp_channel.3 @@ -15,7 +15,7 @@ destroy a completion event channel .fi .SH "DESCRIPTION" .B ibv_create_comp_channel() -creates a completion event channel for the InfiniBand device context +creates a completion event channel for the RDMA device context .I context\fR. .PP .B ibv_destroy_comp_channel() @@ -29,13 +29,14 @@ returns a pointer to the created completion event channel, or NULL if the reques returns 0 on success, or the value of errno on failure (which indicates the failure reason). .SH "NOTES" A "completion channel" is an abstraction introduced by libibverbs that -does not exist in the InfiniBand Architecture verbs specification. A -completion channel is essentially file descriptor that is used to -deliver completion notifications to a userspace process. When a -completion event is generated for a completion queue (CQ), the event -is delivered via the completion channel attached to that CQ. This may -be useful to steer completion events to different threads by using -multiple completion channels. +does not exist in the InfiniBand Architecture verbs specification or +RDMA Protocol Verbs Specification. A completion channel is +essentially file descriptor that is used to deliver completion +notifications to a userspace process. When a completion event is +generated for a completion queue (CQ), the event is delivered via the +completion channel attached to that CQ. This may be useful to steer +completion events to different threads by using multiple completion +channels. .PP .B ibv_destroy_comp_channel() fails if any CQs are still associated with the completion event diff --git a/man/ibv_create_cq.3 b/man/ibv_create_cq.3 index bb256d5..211feea 100644 --- a/man/ibv_create_cq.3 +++ b/man/ibv_create_cq.3 @@ -18,7 +18,7 @@ ibv_create_cq, ibv_destroy_cq \- create or destroy a completion queue (CQ) .B ibv_create_cq() creates a completion queue (CQ) with at least .I cqe -entries for the InfiniBand device context +entries for the RDMA device context .I context\fR. The pointer .I cq_context diff --git a/man/ibv_devices.1 b/man/ibv_devices.1 index 084d01a..99b27e5 100644 --- a/man/ibv_devices.1 +++ b/man/ibv_devices.1 @@ -1,14 +1,14 @@ .TH IBV_DEVICES 1 "August 30, 2005" "libibverbs" "USER COMMANDS" .SH NAME -ibv_devices \- list InfiniBand devices +ibv_devices \- list RDMA devices .SH SYNOPSIS .B ibv_devices .SH DESCRIPTION .PP -List InfiniBand devices available for use from userspace. +List RDMA devices available for use from userspace. .SH SEE ALSO .BR ibv_devinfo (1) diff --git a/man/ibv_devinfo.1 b/man/ibv_devinfo.1 index 5656e14..41878b2 100644 --- a/man/ibv_devinfo.1 +++ b/man/ibv_devinfo.1 @@ -1,7 +1,7 @@ .TH IBV_DEVINFO 1 "August 30, 2005" "libibverbs" "USER COMMANDS" .SH NAME -ibv_devinfo \- query InfiniBand devices +ibv_devinfo \- query RDMA devices .SH SYNOPSIS .B ibv_devinfo @@ -9,7 +9,7 @@ ibv_devinfo \- query InfiniBand devices .SH DESCRIPTION .PP -Print information about InfiniBand devices available for use from userspace. +Print information about RDMA devices available for use from userspace. .SH OPTIONS @@ -22,10 +22,10 @@ use IB device \fIDEVICE\fR (default first device found) query port \fIPORT\fR (default all ports) \fB\-l\fR, \fB\-\-list\fR -only list names of InfiniBand devices +only list names of RDMA devices \fB\-v\fR, \fB\-\-verbose\fR -print all available information about InfiniBand devices +print all available information about RDMA devices .SH SEE ALSO .BR ibv_devices (1) diff --git a/man/ibv_get_async_event.3 b/man/ibv_get_async_event.3 index 77e8be8..076f757 100644 --- a/man/ibv_get_async_event.3 +++ b/man/ibv_get_async_event.3 @@ -14,7 +14,7 @@ ibv_get_async_event, ibv_ack_async_event \- get or acknowledge asynchronous even .fi .SH "DESCRIPTION" .B ibv_get_async_event() -waits for the next async event of the InfiniBand device context +waits for the next async event of the RDMA device context .I context and returns it through the pointer .I event\fR, diff --git a/man/ibv_get_device_guid.3 b/man/ibv_get_device_guid.3 index 03f444a..98c0499 100644 --- a/man/ibv_get_device_guid.3 +++ b/man/ibv_get_device_guid.3 @@ -2,7 +2,7 @@ .\" .TH IBV_GET_DEVICE_GUID 3 2006-10-31 libibverbs "Libibverbs Programmer's Manual" .SH "NAME" -ibv_get_device_guid \- get an InfiniBand device's GUID +ibv_get_device_guid \- get an RDMA device's GUID .SH "SYNOPSIS" .nf .B #include @@ -11,7 +11,7 @@ ibv_get_device_guid \- get an InfiniBand device's GUID .fi .SH "DESCRIPTION" .B ibv_get_device_name() -returns the Global Unique IDentifier (GUID) of the InfiniBand device +returns the Global Unique IDentifier (GUID) of the RDMA device .I device\fR. .SH "RETURN VALUE" .B ibv_get_device_guid() diff --git a/man/ibv_get_device_list.3 b/man/ibv_get_device_list.3 index 4dd8180..104c137 100644 --- a/man/ibv_get_device_list.3 +++ b/man/ibv_get_device_list.3 @@ -2,7 +2,7 @@ .\" .TH IBV_GET_DEVICE_LIST 3 2006-10-31 libibverbs "Libibverbs Programmer's Manual" .SH "NAME" -ibv_get_device_list, ibv_free_device_list \- get and release list of available InfiniBand devices +ibv_get_device_list, ibv_free_device_list \- get and release list of available RDMA devices .SH "SYNOPSIS" .nf .B #include @@ -13,7 +13,7 @@ ibv_get_device_list, ibv_free_device_list \- get and release list of available I .fi .SH "DESCRIPTION" .B ibv_get_device_list() -returns a NULL-terminated array of InfiniBand devices currently available. +returns a NULL-terminated array of RDMA devices currently available. The argument .I num_devices is optional; if not NULL, it is set to the number of devices returned in the array. @@ -25,7 +25,7 @@ returned by .B ibv_get_device_list()\fR. .SH "RETURN VALUE" .B ibv_get_device_list() -returns the array of available InfiniBand devices, or NULL if the request fails. +returns the array of available RDMA devices, or NULL if the request fails. .PP .B ibv_free_device_list() returns no value. diff --git a/man/ibv_get_device_name.3 b/man/ibv_get_device_name.3 index c53f97d..284ea9f 100644 --- a/man/ibv_get_device_name.3 +++ b/man/ibv_get_device_name.3 @@ -2,7 +2,7 @@ .\" .TH IBV_GET_DEVICE_NAME 3 2006-10-31 libibverbs "Libibverbs Programmer's Manual" .SH "NAME" -ibv_get_device_name \- get an InfiniBand device's name +ibv_get_device_name \- get an RDMA device's name .SH "SYNOPSIS" .nf .B #include @@ -11,7 +11,7 @@ ibv_get_device_name \- get an InfiniBand device's name .fi .SH "DESCRIPTION" .B ibv_get_device_name() -returns a human-readable name associated with the InfiniBand device +returns a human-readable name associated with the RDMA device .I device\fR. .SH "RETURN VALUE" .B ibv_get_device_name() diff --git a/man/ibv_open_device.3 b/man/ibv_open_device.3 index 1858a42..61fa82b 100644 --- a/man/ibv_open_device.3 +++ b/man/ibv_open_device.3 @@ -2,7 +2,7 @@ .\" .TH IBV_OPEN_DEVICE 3 2006-10-31 libibverbs "Libibverbs Programmer's Manual" .SH "NAME" -ibv_open_device, ibv_close_device \- open and close an InfiniBand device context +ibv_open_device, ibv_close_device \- open and close an RDMA device context .SH "SYNOPSIS" .nf .B #include diff --git a/man/ibv_query_device.3 b/man/ibv_query_device.3 index f327769..3bf7511 100644 --- a/man/ibv_query_device.3 +++ b/man/ibv_query_device.3 @@ -2,7 +2,7 @@ .\" .TH IBV_QUERY_DEVICE 3 2006-10-31 libibverbs "Libibverbs Programmer's Manual" .SH "NAME" -ibv_query_device \- query an InfiniBand device's attributes +ibv_query_device \- query an RDMA device's attributes .SH "SYNOPSIS" .nf .B #include diff --git a/man/ibv_query_port.3 b/man/ibv_query_port.3 index fd61eb9..c6b3b63 100644 --- a/man/ibv_query_port.3 +++ b/man/ibv_query_port.3 @@ -2,7 +2,7 @@ .\" .TH IBV_QUERY_PORT 3 2006-10-31 libibverbs "Libibverbs Programmer's Manual" .SH "NAME" -ibv_query_port \- query an InfiniBand port's attributes +ibv_query_port \- query an RDMA port's attributes .SH "SYNOPSIS" .nf .B #include diff --git a/man/ibv_query_qp.3 b/man/ibv_query_qp.3 index fd1f41d..8da270e 100644 --- a/man/ibv_query_qp.3 +++ b/man/ibv_query_qp.3 @@ -68,7 +68,7 @@ returns 0 on success, or the value of errno on failure (which indicates the fail The argument .I attr_mask is a hint that specifies the minimum list of attributes to retrieve. -Some InfiniBand devices may return extra attributes not requested, for +Some RDMA devices may return extra attributes not requested, for example if the value can be returned cheaply. .PP Attribute values are valid if they have been set using -- 2.41.0