koljah-de / e1000e-dkms-debian

Intel e1000e ethernet adapter driver (DKMS version) for Debian
https://sourceforge.net/projects/e1000/
GNU General Public License v2.0
72 stars 14 forks source link

Errors on Kali with 5.15.0 kernel #11

Open Gromek1982 opened 2 years ago

Gromek1982 commented 2 years ago

Hello,

I am not able to either install deb or compile it from source. Here's the error we get:

─$ sudo dpkg -i e1000e-dkms_3.8.7_all.deb 2 ⨯ Selecting previously unselected package e1000e-dkms. (Reading database ... 305009 files and directories currently installed.) Preparing to unpack e1000e-dkms_3.8.7_all.deb ... Unpacking e1000e-dkms (3.8.7) ... Setting up e1000e-dkms (3.8.7) ... Removing old e1000e-3.8.7 DKMS files... Deleting module e1000e-3.8.7 completely from the DKMS tree. Loading new e1000e-3.8.7 DKMS files... Building for 5.15.0-kali2-amd64 Building for architecture amd64 Building initial module for 5.15.0-kali2-amd64 Error! Bad return status for module build on kernel: 5.15.0-kali2-amd64 (amd64) Consult /var/lib/dkms/e1000e/3.8.7/build/make.log for more information. dpkg: error processing package e1000e-dkms (--install): installed e1000e-dkms package post-installation script subprocess returned error exit status 10 Errors were encountered while processing: e1000e-dkms

Bellow contents of make.log - can anyone help ? I am not able to get E1000E on my machine.

DKMS make.log for e1000e-3.8.7 for kernel 5.15.0-kali2-amd64 (amd64) Tue 11 Jan 13:58:01 GMT 2022 make[1]: Entering directory '/usr/src/linux-headers-5.15.0-kali2-common' make[2]: Entering directory '/usr/src/linux-headers-5.15.0-kali2-amd64' warning: the compiler differs from the one used to build the kernel The kernel was built by: gcc-11 (Debian 11.2.0-12) 11.2.0 You are using: gcc-11 (Debian 11.2.0-13) 11.2.0 CC [M] /var/lib/dkms/e1000e/3.8.7/build/src/netdev.o /var/lib/dkms/e1000e/3.8.7/build/src/netdev.c: In function ‘e1000e_set_interrupt_capability’: /var/lib/dkms/e1000e/3.8.7/build/src/netdev.c:2315:35: warning: this statement may fall through [-Wimplicit-fallthrough=] 2315 | adapter->int_mode = E1000E_INT_MODE_MSI; /var/lib/dkms/e1000e/3.8.7/build/src/netdev.c:2317:9: note: here 2317 | case E1000E_INT_MODE_MSI: | ^~~~ /var/lib/dkms/e1000e/3.8.7/build/src/netdev.c: In function ‘e1000e_reset’: /var/lib/dkms/e1000e/3.8.7/build/src/netdev.c:4543:20: warning: this statement may fall through [-Wimplicit-fallthrough=] 4543 | if (adapter->netdev->mtu > ETH_DATA_LEN) { | ^ /var/lib/dkms/e1000e/3.8.7/build/src/netdev.c:4551:9: note: here 4551 | default: | ^~~ /var/lib/dkms/e1000e/3.8.7/build/src/netdev.c: In function ‘e1000_setup_rctl’: /var/lib/dkms/e1000e/3.8.7/build/src/netdev.c:3566:32: warning: this statement may fall through [-Wimplicit-fallthrough=] 3566 | psrctl |= PAGE_SIZE << E1000_PSRCTL_BSIZE3_SHIFT; /var/lib/dkms/e1000e/3.8.7/build/src/netdev.c:3568:17: note: here 3568 | case 2: | ^~~~ /var/lib/dkms/e1000e/3.8.7/build/src/netdev.c:3569:32: warning: this statement may fall through [-Wimplicit-fallthrough=] 3569 | psrctl |= PAGE_SIZE << E1000_PSRCTL_BSIZE2_SHIFT; /var/lib/dkms/e1000e/3.8.7/build/src/netdev.c:3571:17: note: here 3571 | case 1: | ^~~~ /var/lib/dkms/e1000e/3.8.7/build/src/netdev.c: In function ‘e1000e_disable_aspm’: /var/lib/dkms/e1000e/3.8.7/build/src/netdev.c:7576:31: warning: this statement may fall through [-Wimplicit-fallthrough=] 7576 | aspm_dis_mask |= PCI_EXP_LNKCTL_ASPM_L0S; /var/lib/dkms/e1000e/3.8.7/build/src/netdev.c:7578:9: note: here 7578 | case PCIE_LINK_STATE_L1: | ^~~~ CC [M] /var/lib/dkms/e1000e/3.8.7/build/src/ethtool.o /var/lib/dkms/e1000e/3.8.7/build/src/ethtool.c:2838:35: error: initialization of ‘int ()(struct net_device , struct ethtool_coalesce , struct kernel_ethtool_coalesce , struct netlink_ext_ack )’ from incompatible pointer type ‘int ()(struct net_device , struct ethtool_coalesce )’ [-Werror=incompatible-pointer-types] 2838 | .get_coalesce = e1000_get_coalesce, | ^~~~~~ /var/lib/dkms/e1000e/3.8.7/build/src/ethtool.c:2838:35: note: (near initialization for ‘e1000_ethtool_ops.get_coalesce’) /var/lib/dkms/e1000e/3.8.7/build/src/ethtool.c:2839:35: error: initialization of ‘int ()(struct net_device , struct ethtool_coalesce , struct kernel_ethtool_coalesce , struct netlink_ext_ack )’ from incompatible pointer type ‘int ()(struct net_device , struct ethtool_coalesce )’ [-Werror=incompatible-pointer-types] 2839 | .set_coalesce = e1000_set_coalesce, | ^~~~~~ /var/lib/dkms/e1000e/3.8.7/build/src/ethtool.c:2839:35: note: (near initialization for ‘e1000_ethtool_ops.set_coalesce’) /var/lib/dkms/e1000e/3.8.7/build/src/ethtool.c: In function ‘e1000_get_rxnfc’: /var/lib/dkms/e1000e/3.8.7/build/src/ethtool.c:2580:28: warning: this statement may fall through [-Wimplicit-fallthrough=] 2580 | if (mrqc & E1000_MRQC_RSS_FIELD_IPV4_TCP) | ^ /var/lib/dkms/e1000e/3.8.7/build/src/ethtool.c:2583:17: note: here 2583 | case UDP_V4_FLOW: | ^~~~ /var/lib/dkms/e1000e/3.8.7/build/src/ethtool.c:2591:28: warning: this statement may fall through [-Wimplicit-fallthrough=] 2591 | if (mrqc & E1000_MRQC_RSS_FIELD_IPV6_TCP) | ^ /var/lib/dkms/e1000e/3.8.7/build/src/ethtool.c:2594:17: note: here 2594 | case UDP_V6_FLOW: | ^~~~ In file included from /var/lib/dkms/e1000e/3.8.7/build/src/ethtool.c:15: /var/lib/dkms/e1000e/3.8.7/build/src/ethtool.c: In function ‘e1000_loopback_cleanup’: /var/lib/dkms/e1000e/3.8.7/build/src/e1000.h:672:25: warning: this statement may fall through [-Wimplicit-fallthrough=] 672 | #define ew32(reg, val) _ew32(hw, E1000##reg, (val)) | ^~~~~~~~~~ /var/lib/dkms/e1000e/3.8.7/build/src/ethtool.c:1931:17: note: in expansion of macro ‘ew32’ 1931 | ew32(TARC(0), tarc0); | ^~~~ /var/lib/dkms/e1000e/3.8.7/build/src/ethtool.c:1933:9: note: here 1933 | case e1000_80003es2lan: | ^~~~ /var/lib/dkms/e1000e/3.8.7/build/src/ethtool.c:1934:20: warning: this statement may fall through [-Wimplicit-fallthrough=] 1934 | if (hw->phy.media_type == e1000_media_type_fiber || | ^ /var/lib/dkms/e1000e/3.8.7/build/src/ethtool.c:1941:9: note: here 1941 | case e1000_82571: | ^~~~ /var/lib/dkms/e1000e/3.8.7/build/src/ethtool.c:1943:20: warning: this statement may fall through [-Wimplicit-fallthrough=] 1943 | if (hw->phy.media_type == e1000_media_type_fiber || | ^ /var/lib/dkms/e1000e/3.8.7/build/src/ethtool.c:1951:9: note: here 1951 | default: | ^~~ cc1: some warnings being treated as errors make[3]: [/usr/src/linux-headers-5.15.0-kali2-common/scripts/Makefile.build:282: /var/lib/dkms/e1000e/3.8.7/build/src/ethtool.o] Error 1 make[2]: [/usr/src/linux-headers-5.15.0-kali2-common/Makefile:1892: /var/lib/dkms/e1000e/3.8.7/build/src] Error 2 make[2]: Leaving directory '/usr/src/linux-headers-5.15.0-kali2-amd64' make[1]: *** [Makefile:231: sub-make] Error 2 make[1]: Leaving directory '/usr/src/linux-headers-5.15.0-kali2-common' make: *** [Makefile:73: default] Error 2

kjonca commented 2 years ago

e1000e.txt I also have this isuue with latest sid. Linux ... 5.15.0-3-amd64 #1 SMP Debian 5.15.15-1 (2022-01-18) x86_64 GNU/Linux Edit: this patch allow compilation of module - it adds unused parameters to two functions

jlittlenz commented 2 years ago

Ubuntu, 5.15.0-35, with these errors. I applied the patch and

    dpkg-deb --build
    sudo dpkg -i e1000e-dkms.deb

ran ok.

hangingman commented 1 year ago

I got same error on Proxmox VE. I referred patch, my procedure;

$ uname -r
5.15.83-1-pve

$ cd /usr/local/src
$ git clone https://github.com/koljah-de/e1000e-dkms-debian.git e1000e
... modify source
$ fakeroot dpkg-deb --build e1000e-dkms .
$ sudo dpkg -i e1000e-dkms_3.8.7_all.deb
git diff ``` $ git diff diff --git a/e1000e-dkms/usr/src/e1000e-3.8.7/src/ethtool.c b/e1000e-dkms/usr/src/e1000e-3.8.7/src/ethtool.c index 891f06d..5eb1f0c 100644 --- a/e1000e-dkms/usr/src/e1000e-3.8.7/src/ethtool.c +++ b/e1000e-dkms/usr/src/e1000e-3.8.7/src/ethtool.c @@ -2421,7 +2421,9 @@ static int e1000_phys_id(struct net_device *netdev, u32 data) #endif /* HAVE_ETHTOOL_SET_PHYS_ID */ static int e1000_get_coalesce(struct net_device *netdev, - struct ethtool_coalesce *ec) + struct ethtool_coalesce *ec, + struct kernel_ethtool_coalesce *kernel_ec, + struct netlink_ext_ack *net_ext_ack) { struct e1000_adapter *adapter = netdev_priv(netdev); @@ -2434,7 +2436,9 @@ static int e1000_get_coalesce(struct net_device *netdev, } static int e1000_set_coalesce(struct net_device *netdev, - struct ethtool_coalesce *ec) + struct ethtool_coalesce *ec, + struct kernel_ethtool_coalesce *kernel_ec, + struct netlink_ext_ack *net_ext_ack) { struct e1000_adapter *adapter = netdev_priv(netdev); ```
Nehereus commented 1 year ago

the patch provided by @kjonca solved the issue on 5.15.107-1-pve, promos

Kayro11 commented 1 year ago

Thanks bro ,its ok with my 5.15.107-2-pve