TCPDirect-9.2.0
===============

  This is a release of TCPDirect to accompany Onload-9.2.0.
  There are no code changes.


TCPDirect-9.1.1.11
==================

  This is an update release of TCPDirect to accompany Onload-9.1.1.
  See changelog for details.


TCPDirect-9.1.0.4
=================

  This is a feature release of TCPDirect matching the corresponding
  Onload release. See changelog for details.


TCPDirect-9.0.2.47
==================

  This is a minor update release of TCPDirect to match Onload-9.0.2 and
  including bug fixes since TCPDirect-9.0.1.31. See changelog for details.


Known issue - extra rpmbuild option required for RHEL 10
--------------------------------------------------------

  Building TCP Direct for RHEL 10 requires an option to be added to the
  rpmbuild command to disable link time optimization, otherwise the
  build will never finish:

    rpmbuild --rebuild --define "_lto_cflags %{nil}" \
             tcpdirect-9.0.2.47-1.src.rpm


TCPDirect-9.0.1.31
==================

  This is a minor update release of TCPDirect to match Onload-9.0.1 and
  including bug fixes since TCPDirect-9.0.0.21. See changelog for details.


TCPDirect-9.0.0.21
==================

  This is a feature release of TCPDirect that includes improvements since
  TCPDirect-8.1.3.8. See the ChangeLog for a list of changes.

  TCPDirect must be used with a matching version of Onload, in this case
  Onload version 9.0.0. The network adapter and operating system support
  derives from those supported by Onload.


TCPDirect distributed as source code
------------------------------------

  TCPDirect has been relicensed with the MIT open source license and
  since v9.0.0 is shipped as a source package rather than a binary package.

  The packaging for Onload and TCPDirect has been refreshed to allow
  suitable new build and installation workflows for the TCPDirect source
  package.

  In particular, this means an additional Onload development package
  is required, which contains the necessary headers for building TCPDirect.


New onload development package
------------------------------

  Onload now includes a package containing headers required by ef_vi
  applications like TCPDirect. Installing this package is required to
  build TCPDirect and TCPDirect applications.

  Please ensure the openonload-devel RPM or onload-dev DEB is installed
  after building Onload before attempting to build TCPDirect.


Public Onload/ef_vi control plane API
-------------------------------------

  The Onload control plane in this Onload-9.0.0 is presented via a new
  public API that can be used by ef_vi applications. As an ef_vi application,
  TCPDirect now uses this API to query the control plane server.


Installation
------------

  To install TCPDirect from a Source RPM:

    0. The source RPM package depends on the Onload userspace and development
       packages in addition to any other dependencies on standard system
       packages:

         - onload
         - onload-devel

    1. Build the binary RPM from the source RPM file:

         rpmbuild --rebuild <source_rpm_path>

       where <source_rpm_path> is the full path to the source RPM.

    2. The build procedure generates a lot of console output. Towards
       the end of the build a "Wrote:" line identifies the location of
       the built binary RPM. For example:

         Wrote: <path>/tcpdirect-<module_version>.rpm

    3. Copy the "Wrote:" location that your server output, and use it
       install the binary RPM. For example:

         rpm -Uvh <path>/tcpdirect-<module_version>.rpm


  To install TCPDirect from a DEB:

    0. The DEB source package depends on the Onload userspace and development
       packages in addition to any other dependencies on standard system
       packages:

         - onload-user
         - onload-dev

    1. Extract debian-source tarball:

         tar -xf tcpdirect_<version>-debiansource.tgz

    2. Unpack debian source archive

         dpkg-source -x tcpdirect_<version>-1.dsc

    3. Enter newly created tcpdirect directory

         cd tcpdirect-<version>

    4. Build debian package

         debuild -i -uc -us

    5. Install debian package

         dpkg -i tcpdirect_<version>-1_amd64.deb

  There is no longer a 'tarball' distribution type as the RPM and DEB source
  packages are suitable for all supported OSs.


SPDX-License-Identifier: MIT
SPDX-FileCopyrightText: (c) 2023-2026 Advanced Micro Devices, Inc.
