[rds-devel] Detecting RDS version and zero copy RDMA capabilities
of RDS transport for a destination
Richard Frank
richard.frank at oracle.com
Wed Nov 14 09:19:11 PST 2007
Applications can use the rds_version() interface which returns a version
constant.
enum {
RDS_V1 = 1, /* to be deprecated */
RDS_V2 = 2, /* cancel interface, etc */
RDS_V3 = 3, /* zero copy "rdma" interfaces, etc */
RDS_V4 = 4 /* rolling upgrades, platform interoperability, etc */
}
RDS version 3 provides zero copy rdma interfaces.
However, whether zero copy rdma operations are available at run time is
dependent on capabilities of the RDS transport unpinning the destination
of the zero copy operation.
Currently, zero copy rdma operations are only activated when using the
RDS IB transport.
We expect to add support for IWARP transports too.
Applications can test at run time if zero copy rdma operations are
supported by invoking the zero copy interfaces. If the transport
underpinning the destination of the zero copy operation does not support
zero copy then "not supported" is returned.
More information about the rds-devel
mailing list