pkgdep/git: Bump ICE and iRDMA drivers to latest available version
This is done in order to align our requirements with the 6.x kernel that we already support under the CI (as part of the fedora37 build). Signed-off-by: Michal Berger <michal.berger@intel.com> Change-Id: I88ff07a0de49c0f9ff90caf54b2690c90ef108b9 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/16308 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Jim Harris <james.r.harris@intel.com> Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
This commit is contained in:
parent
8b5545854b
commit
81fb0a4ee9
@ -429,7 +429,7 @@ function install_igb_uio() {
|
||||
}
|
||||
|
||||
function install_irdma() {
|
||||
local RDMA_CORE_VERSION=35.0
|
||||
local RDMA_CORE_VERSION=42.0
|
||||
local RDMA_CORE=https://github.com/linux-rdma/rdma-core/releases/download/v$RDMA_CORE_VERSION/rdma-core-$RDMA_CORE_VERSION.tar.gz
|
||||
|
||||
if [[ $ID != fedora ]]; then
|
||||
@ -437,7 +437,7 @@ function install_irdma() {
|
||||
return 0
|
||||
fi
|
||||
|
||||
# Install extra dependencies needed by the rdma-core-35.0
|
||||
# Install extra dependencies needed by the rdma-core
|
||||
install ninja-build pandoc perl-generators valgrind-devel python-docutils libnl3 libnl3-devel python3-Cython
|
||||
|
||||
rm -rf "$GIT_REPOS/irdma-$IRDMA_VERSION"
|
||||
@ -506,20 +506,13 @@ function install_ice() {
|
||||
|
||||
curl -L -o- "$ICE_DRIVER" | tar -C "$GIT_REPOS" -xzf -
|
||||
|
||||
if [[ $OSID == ubuntu && $OSVERSION == 18.04 ]]; then
|
||||
if ge "$kernel_ver" 4.15.0-159; then
|
||||
patch --dir="$GIT_REPOS/ice-$ICE_VERSION" -p1
|
||||
fi < "$rootdir/test/common/config/pkgdep/patches/ice/0001-undef-skb-frag-off.patch"
|
||||
if ge "$kernel_ver" 6.1.0; then
|
||||
patch --dir="$GIT_REPOS/ice-$ICE_VERSION" -p1 \
|
||||
< "$rootdir/test/common/config/pkgdep/patches/ice/0001-ktermios-const.patch"
|
||||
patch --dir="$GIT_REPOS/ice-$ICE_VERSION" -p1 \
|
||||
< "$rootdir/test/common/config/pkgdep/patches/ice/0001-netif-napi-weight.patch"
|
||||
fi
|
||||
|
||||
if ge "$kernel_ver" 5.17.0; then
|
||||
patch --dir="$GIT_REPOS/ice-$ICE_VERSION" -p1
|
||||
fi < "$rootdir/test/common/config/pkgdep/patches/ice/0001-ringparam-incompatible-pointer-types.patch"
|
||||
|
||||
if ge "$kernel_ver" 5.19.0; then
|
||||
patch --dir="$GIT_REPOS/ice-$ICE_VERSION" -p1
|
||||
fi < "$rootdir/test/common/config/pkgdep/patches/ice/0001-ext-ack.patch"
|
||||
|
||||
(
|
||||
cd "$GIT_REPOS/ice-$ICE_VERSION/src"
|
||||
sudo make -j"$(nproc)" install
|
||||
@ -608,8 +601,8 @@ function install_sources() {
|
||||
}
|
||||
|
||||
GIT_VERSION=2.25.1
|
||||
IRDMA_VERSION=1.7.72
|
||||
ICE_VERSION=1.8.8
|
||||
IRDMA_VERSION=1.11.16.6
|
||||
ICE_VERSION=1.10.1.2.2
|
||||
|
||||
BPFTRACE_VERSION=${BPFTRACE_VERSION:-36414d9}
|
||||
VFIO_QEMU_BRANCH=${VFIO_QEMU_BRANCH:-vfio-user-patch1-noreq}
|
||||
@ -639,7 +632,7 @@ export DRIVER_LOCATION_QAT
|
||||
export GIT_REPO_GIT
|
||||
: ${GIT_REPO_DPDK_KMODS=http://dpdk.org/git/dpdk-kmods}
|
||||
export GIT_REPO_DPDK_KMODS
|
||||
: ${IRDMA_DRIVER=https://downloadmirror.intel.com/709709/irdma-$IRDMA_VERSION.tgz}
|
||||
: ${IRDMA_DRIVER=https://downloadmirror.intel.com/763932/irdma-$IRDMA_VERSION.tgz}
|
||||
export IRDMA_DRIVER
|
||||
: ${ICE_DRIVER="https://sourceforge.net/projects/e1000/files/ice%20stable/$ICE_VERSION/ice-$ICE_VERSION.tar.gz"}
|
||||
export ICE_DRIVER
|
||||
|
@ -1,23 +0,0 @@
|
||||
This essentially duplicates a portion of the following patch that's already
|
||||
available in the upstream version of the ice driver:
|
||||
|
||||
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=ca4567f1e6f66
|
||||
|
||||
---
|
||||
src/ice_main.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/ice_main.c b/src/ice_main.c
|
||||
index ab5e57c..a81502f 100644
|
||||
--- a/src/ice_main.c
|
||||
+++ b/src/ice_main.c
|
||||
@@ -6951,7 +6951,7 @@ ice_fdb_add(struct ndmsg *ndm, struct nlattr __always_unused *tb[],
|
||||
static int
|
||||
ice_fdb_del(struct ndmsg *ndm, __always_unused struct nlattr *tb[],
|
||||
struct net_device *dev, const unsigned char *addr,
|
||||
- __always_unused u16 vid)
|
||||
+ __always_unused u16 vid, struct netlink_ext_ack *extack)
|
||||
#else
|
||||
static int
|
||||
ice_fdb_del(struct ndmsg *ndm, __always_unused struct nlattr *tb[],
|
||||
--
|
@ -0,0 +1,21 @@
|
||||
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=a8c11c1520347
|
||||
|
||||
---
|
||||
src/ice_gnss.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/ice_gnss.c b/src/ice_gnss.c
|
||||
index f38cbe8..4031f9a 100644
|
||||
--- a/src/ice_gnss.c
|
||||
+++ b/src/ice_gnss.c
|
||||
@@ -414,7 +414,7 @@ static int ice_gnss_tty_write_room(struct tty_struct *tty)
|
||||
* @new_termios: pointer to the new termios parameters
|
||||
*/
|
||||
static void
|
||||
-ice_gnss_tty_set_termios(struct tty_struct *tty, struct ktermios *new_termios)
|
||||
+ice_gnss_tty_set_termios(struct tty_struct *tty, const struct ktermios *new_termios)
|
||||
{
|
||||
/**
|
||||
* Some 3rd party tools (ex. ubxtool) want to change the TTY parameters.
|
||||
--
|
||||
|
@ -0,0 +1,51 @@
|
||||
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=b48b89f9c189d24eb5e2b4a0ac067da5a24ee86d
|
||||
|
||||
---
|
||||
src/ice_base.c | 3 +--
|
||||
src/ice_eswitch.c | 3 +--
|
||||
src/ice_main.c | 2 +-
|
||||
3 files changed, 3 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/src/ice_base.c b/src/ice_base.c
|
||||
index f3cd8dc..1d0115d 100644
|
||||
--- a/src/ice_base.c
|
||||
+++ b/src/ice_base.c
|
||||
@@ -127,8 +127,7 @@ static int ice_vsi_alloc_q_vector(struct ice_vsi *vsi, u16 v_idx)
|
||||
* handler here (i.e. resume, reset/rebuild, etc.)
|
||||
*/
|
||||
if (vsi->netdev)
|
||||
- netif_napi_add(vsi->netdev, &q_vector->napi, ice_napi_poll,
|
||||
- NAPI_POLL_WEIGHT);
|
||||
+ netif_napi_add(vsi->netdev, &q_vector->napi, ice_napi_poll);
|
||||
|
||||
out:
|
||||
/* tie q_vector and VSI together */
|
||||
diff --git a/src/ice_eswitch.c b/src/ice_eswitch.c
|
||||
index 06fce56..077804b 100644
|
||||
--- a/src/ice_eswitch.c
|
||||
+++ b/src/ice_eswitch.c
|
||||
@@ -331,8 +331,7 @@ static int ice_eswitch_setup_reprs(struct ice_pf *pf)
|
||||
if (max_vsi_num < vsi->vsi_num)
|
||||
max_vsi_num = vsi->vsi_num;
|
||||
|
||||
- netif_napi_add(vf->repr->netdev, &vf->repr->q_vector->napi, ice_napi_poll,
|
||||
- NAPI_POLL_WEIGHT);
|
||||
+ netif_napi_add(vf->repr->netdev, &vf->repr->q_vector->napi, ice_napi_poll);
|
||||
|
||||
netif_keep_dst(vf->repr->netdev);
|
||||
}
|
||||
diff --git a/src/ice_main.c b/src/ice_main.c
|
||||
index bc6e6fa..b805ef3 100644
|
||||
--- a/src/ice_main.c
|
||||
+++ b/src/ice_main.c
|
||||
@@ -4391,7 +4391,7 @@ static void ice_napi_add(struct ice_vsi *vsi)
|
||||
|
||||
ice_for_each_q_vector(vsi, v_idx)
|
||||
netif_napi_add(vsi->netdev, &vsi->q_vectors[v_idx]->napi,
|
||||
- ice_napi_poll, NAPI_POLL_WEIGHT);
|
||||
+ ice_napi_poll);
|
||||
}
|
||||
|
||||
/**
|
||||
--
|
||||
|
@ -1,31 +0,0 @@
|
||||
Fix incompatible-pointer-types error raised due to changes in more recent kernels (5.17)
|
||||
in ringparam API.
|
||||
|
||||
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=7462494408cd3de8b0bc1e79670bf213288501d0
|
||||
---
|
||||
src/ice_ethtool.c | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/ice_ethtool.c b/src/ice_ethtool.c
|
||||
index f855968..d92f67b 100644
|
||||
--- a/src/ice_ethtool.c
|
||||
+++ b/src/ice_ethtool.c
|
||||
@@ -4511,7 +4511,7 @@ ice_get_rxnfc(struct net_device *netdev, struct ethtool_rxnfc *cmd,
|
||||
}
|
||||
|
||||
static void
|
||||
-ice_get_ringparam(struct net_device *netdev, struct ethtool_ringparam *ring)
|
||||
+ice_get_ringparam(struct net_device *netdev, struct ethtool_ringparam *ring, struct kernel_ethtool_ringparam __maybe_unused *ker, struct netlink_ext_ack __maybe_unused *ext_ack)
|
||||
{
|
||||
struct ice_netdev_priv *np = netdev_priv(netdev);
|
||||
struct ice_vsi *vsi = np->vsi;
|
||||
@@ -4529,7 +4529,7 @@ ice_get_ringparam(struct net_device *netdev, struct ethtool_ringparam *ring)
|
||||
}
|
||||
|
||||
static int
|
||||
-ice_set_ringparam(struct net_device *netdev, struct ethtool_ringparam *ring)
|
||||
+ice_set_ringparam(struct net_device *netdev, struct ethtool_ringparam *ring, struct kernel_ethtool_ringparam __maybe_unused *ker, struct netlink_ext_ack __maybe_unused *ext_ack)
|
||||
{
|
||||
struct ice_ring *tx_rings = NULL, *rx_rings = NULL;
|
||||
struct ice_netdev_priv *np = netdev_priv(netdev);
|
||||
--
|
@ -1,29 +0,0 @@
|
||||
Current versions of the ice driver redifine skb_frag_off*() on older kernels
|
||||
(< 5.4.0). Unfortunately, ubuntu1804 kernel builds, 4.15, include this change
|
||||
hence gcc complains with:
|
||||
|
||||
kcompat_impl.h:46:28: error: redefinition of ‘skb_frag_off’
|
||||
|
||||
This patch is meant to be used on a particular version of ubuntu to make sure
|
||||
the driver can be built against the shipped kernel.
|
||||
|
||||
Details:
|
||||
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=7240b60c98d6
|
||||
|
||||
---
|
||||
src/kcompat_impl.h | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/src/kcompat_impl.h b/src/kcompat_impl.h
|
||||
index 10d268c..715ce2a 100644
|
||||
--- a/src/kcompat_impl.h
|
||||
+++ b/src/kcompat_impl.h
|
||||
@@ -42,6 +42,7 @@ static inline void net_prefetch(void *p)
|
||||
* Implementing the wrappers directly for older kernels which still have the
|
||||
* old implementation of skb_frag_t is trivial.
|
||||
*/
|
||||
+#undef NEED_SKB_FRAG_OFF_ACCESSORS
|
||||
#ifdef NEED_SKB_FRAG_OFF_ACCESSORS
|
||||
static inline unsigned int skb_frag_off(const skb_frag_t *frag)
|
||||
{
|
||||
--
|
Loading…
Reference in New Issue
Block a user