============================ R E L E A S E N O T E S ============================ QELR USER LIBRARY Version 8.33.1.0 (Dec 14, 2017) =============================== Requires qedr 8.18.8.0 and above. Fixes: ------ 1. Problem: iWARP maximum inline is treated as RoCE's maximum. However RoCE's maximum is larger. Change: When using iWARP, use iWARP's maximum inline data. Introduced: Day 1. Relevance: iWARP. Version 8.33.0.0 (Oct 06, 2017) =============================== Requires qedr 8.18.8.0 and above. Fixes: ------ 1. Problem: A packet may be configured to be sent with legacy DPM while it is configured to be sent as inline, contrary to the specifications. Change: Prevent legacy DPM if a packet is to be sent inline. Introduced: 8.30.0.0. Relevance: RDMA. Version 8.33.0.0 (Oct 06, 2017) =============================== Requires qedr 8.18.8.0 and above. Version 8.30.4.0 (Sep 12, 2017) =============================== Requires qedr 8.18.8.0 and above. Enhancements: ------------- 1. Request: Optimizations to post send/recv verbs. Version 8.30.3.0 (July 28, 2017) =============================== Requires qedr 8.18.8.0 and above. Fixes: ------ 1. Problem: Application hangs when using Legacy DPM. Change: Check driver indication for FW support of Legacy DPM. And send such packets only if they are supported. Introduced: 8.30.0.0. Relevance: RoCE. 2. Problem: CQ95101 - qperf tests rc_rdma_write_bw/lat fail over iWARP. Change: Not expected to pass but changed flow to fail with immediate error. Introduced: Day 1. Relevance: iWARP. Version 8.30.2.0 (May 24, 2017) =============================== Requires qedr 8.18.8.0 and above. Fixes: ------ 1. Problem: rstream application hangs. Change: Convert the immediate data from host to network order. Introduced: Day 1. Relevance: iWARP/RoCE. Version 8.30.1.0 (Apr 06, 2017) =============================== Requires qedr 8.18.8.0 and above. Fixes: ------ 1. Problem: uDAPL tests fail to run. Change: Set byte_len parameter correctly in RDMA_READ requests. Introduced: Day 1. Relevance: iWARP/RoCE. Version 8.30.1.0 (Apr 06, 2017) =============================== Requires qedr 8.18.8.0 and above. Fixes: ------ 1. Problem: iWARP does not support EDPM. Change: Disable EDPM if device is iWARP. Introduced: Day 1 iWARP. Relevance: iWARP. Enhancements: ------------- 1. Request: Add doorbell overflow recovery. Version 8.30.0.0 (Mar 09, 2017) =============================== Requires qedr 8.18.8.0 and above. Fixes: ------ 1. Problem: When changing QP states the result wasn't checked. Also, changing from one QP state to the same one resulted in an error. Change: Check the result of the QP state change operation. Return success if changing from one QP state to another. Introduced: Day 1. Relevance: All. 2. Problem: EDPM loopback takes a long time. Change: Disable EDPM in loopback. Introduced: Day 1. Relevance: All. 3. Problem: RDMA application hangs. Change: Output the number of WIDs an application can use so the application can verify that it is giving a doorbell in the valid range. Introduced: 8.18.9.0. Relevance: RDMA. Enhancements: ------------- 1. Request: Added support for legacy DPM. Version 8.18.4.0 (Jan 18, 2017) =============================== Requires qedr 8.18.8.0 and above. Fixes: ------ 1. Problem: mmap failure wasn't properly checked. Change: Check mmap returned pointer. Introduced: 8.10.1.0. Relevance: All. Enhancements: ------------- 1. Request: Add user-space support for doorbell per CPU. Version 8.18.3.0 (Dec 15, 2016) =============================== Requires qedr 8.18.6.0 and above. Fixes: ------ 1. Problem: The pointer to a QP, SQ or RQ may wrap before reaching end of the queue. Change: Fixed wrapping logic. Introduced: Day 1. Relevance: All. 2. Problem: Even if the doorbell BAR isn't configured to accomodate EDPM doorbells, the library can still try to produce EDPM packets. Change: Added a mechanism to detect if the doorbell BAR was configured to support EDPM packets. The library will use it to determine if to attempt sending a packet via EDPM. Introduced: Day 1. Relevance: EDPM. Enhancements: ------------- 1. Request: Use variable of type __u8/16/32/64 for driver/library API. This aligns the library with the upstream version hence increasing the ABI version to 8 (as in upstream). Version 8.18.2.0 (Dec 05, 2016) =============================== Requires qedr 8.10.3.0 and above. Fixes: ------ 1. Problem: Segmentation fault in open MPI scenario. Change: Reset the flags field in the a responder WC. Introduced: Day 1. Relevance: All. 2. Problem: Data integrity in open MPI scenario. Change: Fix configuration of EDPM command. Introduced: Day 1. Relevance: All. 3. Problem: A READ verb with IBV_SEND_INLINE may be illegally configured. Change: Don't configure READ verb with inline. Introduced: Day 1. Relevance: All. Version 8.18.1.0 (Nov 21, 2016) =============================== Requires qedr 8.10.3.0 and above. Fixes: ------ 1. Problem: CQ89024 - qperf server prints the error "cq: failed to destroy". Change: Lower the verbosity of the error print. Introduced: 8.10.1.0. Relevance: All. Version 8.18.0.0 (Oct 19, 2016) =============================== Requires qedr 8.10.3.0 and above. Fixes: ------ 1. Problem: SQ/RQ overflow occurred. Change: Add protection against SQ/RQ overflow *and* increase size of SQ/RQ shadow arrays by 1. Introduced: Day 1. Relevance: All. Enhancements: ------------- 1. Request: Remove support for AH PCI devices 1077:{8071, 8072, 8073}. Version 8.14.1.0 (Sep 07, 2016) =============================== Requires qedr 8.10.3.0 and above. Fixes: ------ 1. Problem: Posting of send/recv requests didn't conform to the protocol. Change: Allow post send only if in RTS, SQD or ERR QP state. Allow post recv only if not in RESET QP state. Introduced: Day 1. Relevance: All. Version 8.14.0.0 (Jul 31, 2016) =============================== Requires qedr 8.10.3.0 and above. Version 8.10.4.0 (Jun 27, 2016) =============================== Requires qedr 8.10.3.0 and above. Enhancements: ------------- 1. Request: Add support for PCI devices 1077:{8071, 8072, 8073, 8090}. Version 8.10.3.0 (May 09, 2016) =============================== Requires qedr 8.10.3.0 and above. Enhancements: ------------- 1. Request: RoCE shared receive queue support. Version 8.10.1.0 (Mar 15, 2016) =============================== Requires qedr 8.10.1.0 and above. Enhancements: ------------- 1. Request: Allocate SQ, RQ and CQ from user space rather than kernel space. Version 8.10.0.0 (Feb 23, 2016) =============================== Requires qedr 8.10.0.0 and above. Version 8.7.5 (Jan 12, 2016) ============================ Requires qedr 8.7.7.0 and above. Enhancements: ------------- 1. Request: Comment out fast path debug prints. Version 8.7.4 (Jan 07, 2016) ============================ Requires qedr 8.7.7.0 and above. Enhancements: ------------- 1. Request: Modify the qed chain allocation to be page by page. Version 8.7.3 (Dec 28, 2015) ============================ Requires qedr 8.7.6.0 and above. Enhancements: ------------- 1. Request: Increase WQ size from u16 to u32. Version 8.7.2 (Dec 03, 2015) ============================ Requires qedr 8.7.4.0 and above. Enhancements: ------------- 1. Request: Use 32 bit completion queue instead of 16 bit. Version 8.7.1 (Nov 22, 2015) ============================ Requires qedr 8.7.0.0 and above. Enhancements: ------------- 1. Request: Add support for 32-bit chains. Version 8.7.0 (Nov 05, 2015) ============================ Requires qedr 8.7.0.0 and above. Version 8.6.0 (Oct 14, 2015) ============================ Requires qedr 8.6.0.0 and above. Enhancements: ------------- 1. Request: Added support for AH emulation. Version 8.5.4 (Oct 08, 2015) ============================ Requires qedr 8.5.8.0 and above. Enhancements: ------------- 1. Request: Add support for device ids: 0x1666. Version 8.5.3 (Sep 21, 2015) ============================ Requires qedr 8.5.8.0 and above. Enhancements: ------------- 1. Request: qp-id is returned to userspace. Version 8.5.2 (Aug 26, 2015) ============================ Requires qedr 8.5.3.0 and above. Fixes: ------ 1. Problem: Work requests of transmitted by EDPM packets weren't signaled unless requested specifically. This would happen even if the QP was configured to signal all. Change: Configure EDPM packet to signal either if specifically requested or if QP was configured to signal all Introduced: day 1. Relevance: All. Version 8.5.1 (Jul 26, 2015) ============================ Requires qedr 8.5.3.0 and above. Enhancements: ------------- 1. Request: EDPM is now enabled by default (support of environment variable QELR_ENABLE_EDPM has been removed). Version 8.5.0 (Jun 25, 2015) ============================ Requires qedr 8.5.0.0 and above. Version 8.3.1 (May 26, 2015) ============================== Requires qedr 8.3.0.0 and above. Enhancements: ------------- 1. Request: Add support for device ids: 0x1644, 0x1654, 0x1664 Version 8.3.0 (April 20, 2015) ============================== Requires qedr 8.3.0.0 and above. Fixes: ------ 1. Problem: rcopy with large files fails on post_recv. Change: Consumer wasn't updated correctly for posts with 0 sges. Introduced: Day 1. Relevance: All. 2. Problem: CQ78275 - ib_atomic_lat causes crash on setups with no pci atomic support. Change: Pass atomic capability to userlib during create qp. Introduced: Day 1. Relevance: RoCE, atomic. 3. Problem: CQ78561 - "DORQ/CCFC" asssertion messages in pause mode. CQ78560 - Segfault received on server if traffic stops at client. Change: Stop posting SQ/RQ WQEs after error received on QP. Introduced: Day 1. Relevance: All. Enhancements: ------------- 1. Request: Use EDPM Doorbells to improve latency. Disabled by default. For A0 should only be enabled if dcbx is disabled. To enable set environment variable QELR_ENABLE_EDPM=1