M. Vefa Bicakci 5549fd6849 Debian: Add libbnxt_re Infiniband verbs library
This commit adds the libbnxt_re Infiniband verbs library to Debian-based
StarlingX.

In comparison to commit 9baff8aa884a ("Introduce libbnxt_re version
220.0.5.0") and commit 4112936362c6 ("libbnxt_re: Add support for
rdma-core v37") that introduce the same library to CentOS-based
StarlingX, the only change in this commit was to remove the use of the
"stdatomic.h" header's compatibility-oriented version shipped with
libbxnt_re. This header file is already provided by Debian's newer
toolchain.

The two patches make the library compatible with rdma-core v37 provided
by Mellanox OFED's version of rdma-core. For further information, please
see commit 4112936362c6 ("libbnxt_re: Add support for rdma-core v37").

Verification notes:
- An ISO image with the standard kernel was successfully built with this
  commit and the resulting ISO image was installed onto a physical
  server with a quad-port Broadcom NetXtreme-E network adapter, of which
  the third and fourth ports were connected to each other with a
  loopback cable.

- When we installed the Linux RDMA community's perftest package on
  Debian-based StarlingX with apt-get and attempted to run the benchmark
  programs, we encountered a dynamically-linked library error caused by
  the "libefa.so" Infiniband verbs library (that perftest's utilities
  appear to link against) not existing on the system. This occurs
  because the Mellanox OFED version of the rdma-core package in
  StarlingX does not build the libefa.so library.

  To work around this, we built the perftest package in a Debian
  Bullseye container, after having modified perftest's configure.ac file
  to avoid linking against libefa.so. The resulting binaries were
  successfully used on the aforementioned server to verify the
  libbnxt_re Infiniband verbs library and the bnxt_re driver.

  The test procedure consisted of using a server ib_write_bw instance on
  the 3rd port of the network adapter and another instance as a client
  on the 4th port of the network adapter. (Recall that ports 3 and 4
  were connected to each other.)

- The preempt-rt kernel was not tested due to not being able to generate
  a working ISO image that installed onto a virtual machine. (The
  installation process was aborted with a kickstart file parse error.)

Story: 2009915
Task: 45139

Change-Id: I917c18ef262afdf3ddfaa7e31af2583b8f74300b
Signed-off-by: M. Vefa Bicakci <vefa.bicakci@windriver.com>
2022-04-26 23:45:45 +00:00

49 lines
2.1 KiB
Plaintext

Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Upstream-Name: libbnxt_re
Upstream-Contact: Broadcom Inc.
Source: libbnxt_re-220.0.5.0.tar.gz
Comment:
Source archive is included as
bcm_220.0.83.0/Linux/Linux_RoCE/RoCE_Lib/libbnxt_re-220.0.5.0.tar.gz
in the compressed tar archive at the following address:
https://docs.broadcom.com/docs-and-downloads/ethernet-network-adapters/NXE/BRCM_220.0.83.0/bcm_220.0.83.0.tar.gz
Files: *
Copyright: Copyright 2016-2022 Broadcom Inc.
Comment:
Documentation in the source archive indicates copyright years 2016-2021.
However, the source code was released in 2022. Hence, the copyright year above
is indicated by this file as 2016-2022.
License: GPL-2 or BSD-2-clause
License: GPL-2
This program is free software; you can redistribute it and/or modify it under
the terms and conditions of the GNU General Public License, version 2, as
published by the Free Software Foundation.
This program is distributed in the hope it will be useful, but WITHOUT ANY
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with
this program; if not, write to the Free Software Foundation, Inc., 51 Franklin
St - Fifth Floor, Boston, MA 02110-1301 USA.
The full GNU General Public License is included in this distribution in the
file called "COPYING".
On Debian-based systems the full text of the GNU General Public License
version 2 license can be found in `/usr/share/common-licenses/GPL-2'.
License: BSD-2-clause
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in
the documentation and/or other materials provided with the
distribution.