Update iavf version to 4.7.0 to fix kernel-6.1 based build error
This commit is contained in:
parent
2a77451a90
commit
bb1e327a65
@ -1,42 +0,0 @@
|
|||||||
From 7462494408cd3de8b0bc1e79670bf213288501d0 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Hao Chen <chenhao288@hisilicon.com>
|
|
||||||
Date: Thu, 18 Nov 2021 20:12:43 +0800
|
|
||||||
Subject: ethtool: extend ringparam setting/getting API with rx_buf_len
|
|
||||||
|
|
||||||
Add two new parameters kernel_ringparam and extack for
|
|
||||||
.get_ringparam and .set_ringparam to extend more ring params
|
|
||||||
through netlink.
|
|
||||||
|
|
||||||
---
|
|
||||||
src/iavf_ethtool.c | 8 ++++++--
|
|
||||||
1 files changed, 6 insertions(+), 2 deletions(-)
|
|
||||||
delete mode 100644 src/.iavf_ethtool_stats.h.swp
|
|
||||||
|
|
||||||
diff --git a/src/iavf_ethtool.c b/src/iavf_ethtool.c
|
|
||||||
index 3f7d427..545685f 100644
|
|
||||||
--- a/src/iavf_ethtool.c
|
|
||||||
+++ b/src/iavf_ethtool.c
|
|
||||||
@@ -634,7 +634,9 @@ static void iavf_get_drvinfo(struct net_device *netdev,
|
|
||||||
* but the number of rings is not reported.
|
|
||||||
**/
|
|
||||||
static void iavf_get_ringparam(struct net_device *netdev,
|
|
||||||
- struct ethtool_ringparam *ring)
|
|
||||||
+ struct ethtool_ringparam *ring,
|
|
||||||
+ struct kernel_ethtool_ringparam *kernel_ring,
|
|
||||||
+ struct netlink_ext_ack *extack)
|
|
||||||
{
|
|
||||||
struct iavf_adapter *adapter = netdev_priv(netdev);
|
|
||||||
|
|
||||||
@@ -653,7 +655,9 @@ static void iavf_get_ringparam(struct net_device *netdev,
|
|
||||||
* number of rings is not specified, so all rings get the same settings.
|
|
||||||
**/
|
|
||||||
static int iavf_set_ringparam(struct net_device *netdev,
|
|
||||||
- struct ethtool_ringparam *ring)
|
|
||||||
+ struct ethtool_ringparam *ring,
|
|
||||||
+ struct kernel_ethtool_ringparam *kernel_ring,
|
|
||||||
+ struct netlink_ext_ack *extack)
|
|
||||||
{
|
|
||||||
struct iavf_adapter *adapter = netdev_priv(netdev);
|
|
||||||
u32 new_rx_count, new_tx_count;
|
|
||||||
--
|
|
||||||
2.27.0
|
|
||||||
@ -1,60 +0,0 @@
|
|||||||
From f3ccfda1931977b80267ba54070a1aeafa18f6ca Mon Sep 17 00:00:00 2001
|
|
||||||
From: Yufeng Mo <moyufeng@huawei.com>
|
|
||||||
Date: Fri, 20 Aug 2021 15:35:18 +0800
|
|
||||||
Subject: [PATCH] ethtool: extend coalesce setting uAPI with CQE mode
|
|
||||||
|
|
||||||
In order to support more coalesce parameters through netlink,
|
|
||||||
add two new parameter kernel_coal and extack for .set_coalesce
|
|
||||||
and .get_coalesce, then some extra info can return to user with
|
|
||||||
the netlink API.
|
|
||||||
|
|
||||||
Signed-off-by: Yufeng Mo <moyufeng@huawei.com>
|
|
||||||
Signed-off-by: Huazhong Tan <tanhuazhong@huawei.com>
|
|
||||||
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
|
||||||
---
|
|
||||||
src/iavf_ethtool.c | 12 ++++++++++--
|
|
||||||
1 file changed, 10 insertions(+), 2 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/src/iavf_ethtool.c b/src/iavf_ethtool.c
|
|
||||||
index 3f7d427..4b60027 100644
|
|
||||||
--- a/src/iavf_ethtool.c
|
|
||||||
+++ b/src/iavf_ethtool.c
|
|
||||||
@@ -753,6 +753,8 @@ static int __iavf_get_coalesce(struct net_device *netdev,
|
|
||||||
* iavf_get_coalesce - Get interrupt coalescing settings
|
|
||||||
* @netdev: network interface device structure
|
|
||||||
* @ec: ethtool coalesce structure
|
|
||||||
+ * @kernel_coal: ethtool CQE mode setting structure
|
|
||||||
+ * @extack: extack for reporting error messages
|
|
||||||
*
|
|
||||||
* Returns current coalescing settings. This is referred to elsewhere in the
|
|
||||||
* driver as Interrupt Throttle Rate, as this is how the hardware describes
|
|
||||||
@@ -760,7 +762,9 @@ static int __iavf_get_coalesce(struct net_device *netdev,
|
|
||||||
* only represents the settings of queue 0.
|
|
||||||
**/
|
|
||||||
static int iavf_get_coalesce(struct net_device *netdev,
|
|
||||||
- struct ethtool_coalesce *ec)
|
|
||||||
+ struct ethtool_coalesce *ec,
|
|
||||||
+ struct kernel_ethtool_coalesce *kernel_coal,
|
|
||||||
+ struct netlink_ext_ack *extack)
|
|
||||||
{
|
|
||||||
return __iavf_get_coalesce(netdev, ec, -1);
|
|
||||||
}
|
|
||||||
@@ -898,11 +902,15 @@ static int __iavf_set_coalesce(struct net_device *netdev,
|
|
||||||
* iavf_set_coalesce - Set interrupt coalescing settings
|
|
||||||
* @netdev: network interface device structure
|
|
||||||
* @ec: ethtool coalesce structure
|
|
||||||
+ * @kernel_coal: ethtool CQE mode setting structure
|
|
||||||
+ * @extack: extack for reporting error messages
|
|
||||||
*
|
|
||||||
* Change current coalescing settings for every queue.
|
|
||||||
**/
|
|
||||||
static int iavf_set_coalesce(struct net_device *netdev,
|
|
||||||
- struct ethtool_coalesce *ec)
|
|
||||||
+ struct ethtool_coalesce *ec,
|
|
||||||
+ struct kernel_ethtool_coalesce *kernel_coal,
|
|
||||||
+ struct netlink_ext_ack *extack)
|
|
||||||
{
|
|
||||||
return __iavf_set_coalesce(netdev, ec, -1);
|
|
||||||
}
|
|
||||||
--
|
|
||||||
2.30.0
|
|
||||||
@ -1,37 +0,0 @@
|
|||||||
From f72271e2a0ae4277d53c4053f5eed8bb346ba38a Mon Sep 17 00:00:00 2001
|
|
||||||
From: Brian King <brking@linux.vnet.ibm.com>
|
|
||||||
Date: Fri, 17 Nov 2017 11:05:49 -0600
|
|
||||||
Subject: i40evf: Use smp_rmb rather than read_barrier_depends
|
|
||||||
|
|
||||||
The original issue being fixed in this patch was seen with the ixgbe
|
|
||||||
driver, but the same issue exists with i40evf as well, as the code is
|
|
||||||
very similar. read_barrier_depends is not sufficient to ensure
|
|
||||||
loads following it are not speculatively loaded out of order
|
|
||||||
by the CPU, which can result in stale data being loaded, causing
|
|
||||||
potential system crashes.
|
|
||||||
|
|
||||||
Cc: stable <stable@vger.kernel.org>
|
|
||||||
Signed-off-by: Brian King <brking@linux.vnet.ibm.com>
|
|
||||||
Acked-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
|
|
||||||
Tested-by: Andrew Bowers <andrewx.bowers@intel.com>
|
|
||||||
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
|
|
||||||
---
|
|
||||||
drivers/net/ethernet/intel/i40evf/i40e_txrx.c | 2 +-
|
|
||||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/src/iavf_txrx.c b/src/iavf_txrx.c
|
|
||||||
index 03c685c..da3cfed 100644
|
|
||||||
--- a/src/iavf_txrx.c
|
|
||||||
+++ b/src/iavf_txrx.c
|
|
||||||
@@ -289,7 +289,7 @@ static bool iavf_clean_tx_irq(struct iavf_vsi *vsi,
|
|
||||||
break;
|
|
||||||
|
|
||||||
/* prevent any other reads prior to eop_desc */
|
|
||||||
- read_barrier_depends();
|
|
||||||
+ smp_rmb();
|
|
||||||
|
|
||||||
iavf_trace(clean_tx_irq, tx_ring, tx_desc, tx_buf);
|
|
||||||
/* if the descriptor isn't done, no work yet to do */
|
|
||||||
--
|
|
||||||
1.8.3.1
|
|
||||||
|
|
||||||
Binary file not shown.
BIN
iavf-4.7.0.tar.gz
Normal file
BIN
iavf-4.7.0.tar.gz
Normal file
Binary file not shown.
30
iavf.spec
30
iavf.spec
@ -8,21 +8,17 @@
|
|||||||
|
|
||||||
Name: iavf
|
Name: iavf
|
||||||
Summary: Intel(R) Ethernet Adaptive Virtual Function Driver
|
Summary: Intel(R) Ethernet Adaptive Virtual Function Driver
|
||||||
Version: 4.0.1
|
Version: 4.7.0
|
||||||
Release: 8
|
Release: 1
|
||||||
Vendor: Intel Corporation
|
Vendor: Intel Corporation
|
||||||
License: GPL-2.0
|
License: GPL-2.0
|
||||||
URL: http://support.intel.com
|
URL: http://support.intel.com
|
||||||
Source0: https://downloadmirror.intel.com/30326/eng/%{name}-%{version}.tar.gz
|
Source0: https://downloadmirror.intel.com/762473/%{name}-%{version}.tar.gz
|
||||||
|
|
||||||
Requires: kernel, findutils, gawk, bash, hwdata
|
Requires: kernel, findutils, gawk, bash, hwdata
|
||||||
|
|
||||||
BuildRequires: kernel-devel hwdata uname-build-checks gcc
|
BuildRequires: kernel-devel hwdata uname-build-checks gcc
|
||||||
|
|
||||||
Patch0: fix-build-error-with-Linux-5.10.patch
|
|
||||||
Patch1: backport-extend-coalesce-setting-uAPI-with-CQE-mode.patch
|
|
||||||
Patch2: backport-ethtool-extend-ringparam-setting-getting-API-with-rx.patch
|
|
||||||
|
|
||||||
%description
|
%description
|
||||||
This package contains the Intel(R) Ethernet Adaptive Virtual Function Driver.
|
This package contains the Intel(R) Ethernet Adaptive Virtual Function Driver.
|
||||||
|
|
||||||
@ -331,6 +327,11 @@ fi
|
|||||||
|
|
||||||
uname -r | grep BOOT || /sbin/depmod -a > /dev/null 2>&1 || true
|
uname -r | grep BOOT || /sbin/depmod -a > /dev/null 2>&1 || true
|
||||||
|
|
||||||
|
if [ -x "/usr/sbin/weak-modules" ]; then
|
||||||
|
modules=( $(cat %{_docdir}/%{name}/file.list | grep '\.ko$' | xargs realpath) )
|
||||||
|
printf '%s\n' "${modules[@]}" | /usr/sbin/weak-modules --no-initramfs --add-modules
|
||||||
|
fi
|
||||||
|
|
||||||
if which dracut >/dev/null 2>&1; then
|
if which dracut >/dev/null 2>&1; then
|
||||||
echo "Updating initramfs with dracut..."
|
echo "Updating initramfs with dracut..."
|
||||||
if dracut --force ; then
|
if dracut --force ; then
|
||||||
@ -356,11 +357,20 @@ else
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
%preun
|
%preun
|
||||||
|
# save tmp list of installed kernel modules for weak-modules
|
||||||
|
cat %{_docdir}/%{name}/file.list | grep '\.ko$' | xargs realpath > /var/run/rpm-%{name}-modules.list
|
||||||
|
|
||||||
rm -rf /usr/local/share/%{name}
|
rm -rf /usr/local/share/%{name}
|
||||||
|
|
||||||
%postun
|
%postun
|
||||||
uname -r | grep BOOT || /sbin/depmod -a > /dev/null 2>&1 || true
|
uname -r | grep BOOT || /sbin/depmod -a > /dev/null 2>&1 || true
|
||||||
|
|
||||||
|
if [ -x "/usr/sbin/weak-modules" ]; then
|
||||||
|
modules=( $(cat /var/run/rpm-%{name}-modules.list) )
|
||||||
|
printf '%s\n' "${modules[@]}" | /usr/sbin/weak-modules --no-initramfs --remove-modules
|
||||||
|
fi
|
||||||
|
rm /var/run/rpm-%{name}-modules.list
|
||||||
|
|
||||||
if which dracut >/dev/null 2>&1; then
|
if which dracut >/dev/null 2>&1; then
|
||||||
echo "Updating initramfs with dracut..."
|
echo "Updating initramfs with dracut..."
|
||||||
if dracut --force ; then
|
if dracut --force ; then
|
||||||
@ -386,6 +396,12 @@ else
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Wed Feb 01 2023 yanglu <yanglu72@h-partners.com> - 4.7.0-1
|
||||||
|
- Type:bugfix
|
||||||
|
- ID:NA
|
||||||
|
- SUG:NA
|
||||||
|
- DESC:Update iavf version to 4.7.0 to fix kernel-6.1 based build error
|
||||||
|
|
||||||
* Tue Dec 06 2022 xingwei <xingwei@h-partners.com> - 4.0.1-8
|
* Tue Dec 06 2022 xingwei <xingwei@h-partners.com> - 4.0.1-8
|
||||||
- Type:bugfix
|
- Type:bugfix
|
||||||
- ID:NA
|
- ID:NA
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user