Onload-8.0.1 ============ This release of Onload adds support for the new Alveo™ XtremeScale™ X3522 low latency network adapter from Xilinx, includes version 5.3.13 of the sfc net driver and various fixes since OpenOnload-8.0.0.34. Linux distribution support -------------------------- This package can be installed on: - Red Hat Enterprise Linux 7.8 - 7.9 - Red Hat Enterprise Linux 8.2 - 8.6 - Red Hat Enterprise Linux 9.0 - SuSE Linux Enterprise Server 15 SP1 - SP4 - Canonical Ubuntu Server LTS 20.04 and 22.04 - Debian 10 "Buster" - Debian 11 "Bullseye" - Linux kernels 4.15 - 5.17 Notes for use with X3522 ------------------------ Architectural differences affecting receive: - Maximum of 256 filters(*) - Filtering is by 3-tuple (remote IP address and port) - New ef_vi functions to be called on new events EF_EVENT_TYPE_RX_REF(_DISCARD) efct_vi_rxpkt_get() efct_vi_rxpkt_release() - Unexpected packets may be observed - No receive-side scaling Architectural differences affecting transmit: - Maximum of 15 applications (16 queues) - All transmission is by reliable CTPIO with stable performance - No hardware checksumming - Frequent polling is essential to achieve reasonable packet rate due to small transmit buffer in hardware - ef_vi applications should call ef_vi_transmit_space_bytes() or handle EAGAIN from ef_vi_transmit() Tuning differences: On X3522 the xilinx_efct net driver must perform regular work to keep the RX path supplied with buffers, including when using Onload/TCPDirect/ef_vi. Ensure that xilinx_efct interrupts are delivered to CPU cores which have sufficient capacity and are able to be handled in a timely fashion to avoid underruns. (*) The limit of 256 filters is not necessary an obstacle to users who typically already use more than this as fewer filters are likely to be needed with this architecture. Installation ------------ The following components must be installed to use X3-based network cards in the given order of dependency: - 'auxiliary' bus driver (supplied as a back-ported standalone component)(*) - 'xilinx_efct' net driver - OpenOnload-8.0.1 (*) The auxiliary bus driver is only necessary for kernels that are built without CONFIG_AUXILIARY_BUS. The following supported distributions include built-in support and so do not need the driver: - RedHat Enterprise Linux 8.5 and later - Canonical Ubuntu Server 20.10 and later Onload-8.0.0.34 =============== This is a major feature release of Onload adding support for the new X3-based NICs from Xilinx. TCPDirect is now supplied as a separate package. Major features and fixes since OpenOnload-7.1.3.202 are included and version 5.3.12.1023 of the sfc net driver for X2-based network cards. Linux distribution support -------------------------- This package can be installed on: - Red Hat Enterprise Linux 7.8 - 7.9 - Red Hat Enterprise Linux 8.2 - 8.6 - Red Hat Enterprise Linux 9.0 - SuSE Linux Enterprise Server 15 SP1 - SP3 - Canonical Ubuntu Server LTS 20.04 and 22.04 - Canonical Ubuntu Server 21.10 - Debian 10 "Buster" - Debian 11 "Bullseye" - Linux kernels 4.15 - 5.15 Packaging, source and licensing changes --------------------------------------- The Onload control plane is now distributed as source code rather than a binary and built from source with Onload. The control plane, ef_vi and various other components are now provided with a BSD 2-Clause licence. TCP Direct has been moved into a separate package which should be installed with a corresponding version of Onload. For example, tcpdirect-8.0.0.x should be used with onload-8.0.0.y. The table below summarises the situation for each component: |--------------------+-------------+-------------+-----------------| | | Supplied as | Licence | Package | |--------------------+-------------+-------------+-----------------| | Onload | source | GPL-2.0 | onload-8.0.0 | |--------------------+-------------+-------------+-----------------| | Onload headers | source | GPL-2.0 or | onload-8.0.0 | | needed for ef_vi | | BSD | | | applications | | 2-Clause | | |--------------------+-------------+-------------+-----------------| | Onload extensions | source | BSD | onload-8.0.0 | | stub library | | 2-Clause | | |--------------------+-------------+-------------+-----------------| | Control plane | source | BSD | onload-8.0.0 | | | | 2-Clause | | |--------------------+-------------+-------------+-----------------| | User-modifiable | source | BSD | onload-8.0.0 | | scripts & examples | | 2-Clause | | |--------------------+-------------+-------------+-----------------| | ef_vi | source | BSD | onload-8.0.0 | | | | 2-Clause | | |--------------------+-------------+-------------+-----------------| | TCP Direct | binary | Proprietary | tcpdirect-8.0.0 | |--------------------+-------------+-------------+-----------------| Python 3 required ----------------- The Python scripts have been updated and now require a Python 3 interpreter. No 32-bit acceleration ---------------------- This and successor releases do not support the acceleration of 32-bit applications. sfc_affinity ------------ The deprecated support for adding steering filters through the sfc_affinity driver and the sfcaffinity tool has been removed. sfc_affinity_config has been modified to use the sfc_resource driver.