You are not logged in.
Errors on compiling network driver for
Intel I211AT LAN
driver version: igb 5.3.5.42
latest driver source: https://downloadcenter.intel.com/downlo … duct=64403
Error_1 [SOLVED]
/home/maxim/igb-5.3.5.42/src/kcompat.h:2816:10: fatal error: linux/pci-aspm.h: No such file or folder
2816 | #include <linux/pci-aspm.h>
As I understand current kernel release
have no linux/pci-aspm.h
all functions moved to linux/pci.h
Move ASPM definitions and function prototypes from include/linux/pci-aspm.h
to include/linux/pci.h so users only need to include <linux/pci.h>:PCIE_LINK_STATE_L0S
PCIE_LINK_STATE_L1
PCIE_LINK_STATE_CLKPM
pci_disable_link_state()
pci_disable_link_state_locked()
pcie_no_aspm()
User can edit intel driver src file kcompat.h
replace pci-aspm.h with linux/pci.h
Error_2
/home/maxim/igb-5.3.5.42/src/igb_main.c: at function «igb_tx_map»:
/home/maxim/igb-5.3.5.42/src/igb_main.c:5728:12: error: assignment to «struct skb_frag_struct *» from incompatible pointer type «skb_frag_t *» {aka «struct bio_vec *»} [-Werror=incompatible-pointer-types]
5728 | for (frag = &skb_shinfo(skb)->frags[0];; frag++) {
| ^
/home/maxim/igb-5.3.5.42/src/igb_main.c:5728:47: error: инкремент pointer на неполный тип «struct skb_frag_struct»
5728 | for (frag = &skb_shinfo(skb)->frags[0];; frag++) {
| ^~
/home/maxim/igb-5.3.5.42/src/igb_main.c:5769:24: error: in argument 1 transmission «skb_frag_size»: incompatible pointer type [-Werror=incompatible-pointer-types]
5769 | size = skb_frag_size(frag);
| ^~~~
| |
| struct skb_frag_struct *
In file included from ./include/linux/if_ether.h:19,
from ./include/uapi/linux/ethtool.h:19,
from ./include/linux/ethtool.h:18,
from ./include/linux/netdevice.h:37,
from /home/maxim/igb-5.3.5.42/src/igb_main.c:9:
./include/linux/skbuff.h:325:60: замечание: waited type «const skb_frag_t *» {aka «const struct bio_vec *»}, but argument has type «struct skb_frag_struct *»
325 | static inline unsigned int skb_frag_size(const skb_frag_t *frag)
| ~~~~~~~~~~~~~~~~~~^~~~
/home/maxim/igb-5.3.5.42/src/igb_main.c:5772:40: error: in argument 2 transmission «skb_frag_dma_map»: incompatible pointer type [-Werror=incompatible-pointer-types]
5772 | dma = skb_frag_dma_map(tx_ring->dev, frag, 0,
| ^~~~
| |
| struct skb_frag_struct *
In file included from ./include/linux/if_ether.h:19,
from ./include/uapi/linux/ethtool.h:19,
from ./include/linux/ethtool.h:18,
from ./include/linux/netdevice.h:37,
from /home/maxim/igb-5.3.5.42/src/igb_main.c:9:
./include/linux/skbuff.h:3068:26: замечание: waited type «const skb_frag_t *» {aka «const struct bio_vec *»}, but argument has type «struct skb_frag_struct *»
3068 | const skb_frag_t *frag,
| ~~~~~~~~~~~~~~~~~~^~~~
is in related with the case?
https://lore.kernel.org/netdev/20190501 … adead.org/
problem on Kernel and Kernel-Headers: 5.5.6, 5.5.8
How to solve it? Any patch?
Last edited by mashrum (2020-03-08 11:34:03)
Offline
The igb kernel module is included in the archlinux kernels , why are you trying to build an older version ?
Post lspci -knn please.
Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.
clean chroot building not flexible enough ?
Try clean chroot manager by graysky
Online
I was not be sure that build-in version is actual
[root@fobot-01 maxim]# lspci -knn
00:00.0 Host bridge [0600]: Intel Corporation Atom Processor Z36xxx/Z37xxx Series SoC Transaction Register [8086:0f00] (rev 11)
Subsystem: Intel Corporation Atom Processor Z36xxx/Z37xxx Series SoC Transaction Register [8086:7270]
Kernel driver in use: iosf_mbi_pci
00:02.0 VGA compatible controller [0300]: Intel Corporation Atom Processor Z36xxx/Z37xxx Series Graphics & Display [8086:0f31] (rev 11)
Subsystem: Intel Corporation Atom Processor Z36xxx/Z37xxx Series Graphics & Display [8086:7270]
Kernel driver in use: i915
Kernel modules: i915
00:13.0 IDE interface [0101]: Intel Corporation Atom Processor E3800 Series SATA IDE Controller [8086:0f21] (rev 11)
Subsystem: Intel Corporation Atom Processor E3800 Series SATA IDE Controller [8086:7270]
Kernel driver in use: ata_piix
Kernel modules: ata_piix, pata_acpi, ata_generic
00:1a.0 Encryption controller [1080]: Intel Corporation Atom Processor Z36xxx/Z37xxx Series Trusted Execution Engine [8086:0f18] (rev 11)
Subsystem: Intel Corporation Atom Processor Z36xxx/Z37xxx Series Trusted Execution Engine [8086:7270]
Kernel driver in use: mei_txe
Kernel modules: mei_txe
00:1b.0 Audio device [0403]: Intel Corporation Atom Processor Z36xxx/Z37xxx Series High Definition Audio Controller [8086:0f04] (rev 11)
Subsystem: Intel Corporation Atom Processor Z36xxx/Z37xxx Series High Definition Audio Controller [8086:7270]
Kernel driver in use: snd_hda_intel
Kernel modules: snd_hda_intel
00:1c.0 PCI bridge [0604]: Intel Corporation Atom Processor E3800 Series PCI Express Root Port 1 [8086:0f48] (rev 11)
Kernel driver in use: pcieport
00:1c.1 PCI bridge [0604]: Intel Corporation Atom Processor E3800 Series PCI Express Root Port 2 [8086:0f4a] (rev 11)
Kernel driver in use: pcieport
00:1c.2 PCI bridge [0604]: Intel Corporation Atom Processor E3800 Series PCI Express Root Port 3 [8086:0f4c] (rev 11)
Kernel driver in use: pcieport
00:1c.3 PCI bridge [0604]: Intel Corporation Atom Processor E3800 Series PCI Express Root Port 4 [8086:0f4e] (rev 11)
Kernel driver in use: pcieport
00:1d.0 USB controller [0c03]: Intel Corporation Atom Processor Z36xxx/Z37xxx Series USB EHCI [8086:0f34] (rev 11)
Subsystem: Intel Corporation Atom Processor Z36xxx/Z37xxx Series USB EHCI [8086:7270]
Kernel driver in use: ehci-pci
Kernel modules: ehci_pci
00:1f.0 ISA bridge [0601]: Intel Corporation Atom Processor Z36xxx/Z37xxx Series Power Control Unit [8086:0f1c] (rev 11)
Subsystem: Intel Corporation Atom Processor Z36xxx/Z37xxx Series Power Control Unit [8086:7270]
Kernel driver in use: lpc_ich
Kernel modules: lpc_ich
00:1f.3 SMBus [0c05]: Intel Corporation Atom Processor E3800 Series SMBus Controller [8086:0f12] (rev 11)
Subsystem: Intel Corporation Atom Processor E3800 Series SMBus Controller [8086:7270]
Kernel driver in use: i801_smbus
Kernel modules: i2c_i801
01:00.0 Ethernet controller [0200]: Intel Corporation I211 Gigabit Network Connection [8086:1539] (rev 03)
Subsystem: Intel Corporation I211 Gigabit Network Connection [8086:0000]
Kernel driver in use: igb
Kernel modules: igb
02:00.0 Ethernet controller [0200]: Intel Corporation I211 Gigabit Network Connection [8086:1539] (rev 03)
Subsystem: Intel Corporation I211 Gigabit Network Connection [8086:0000]
Kernel modules: igb
Offline
01:00.0 Ethernet controller [0200]: Intel Corporation I211 Gigabit Network Connection [8086:1539] (rev 03)
Subsystem: Intel Corporation I211 Gigabit Network Connection [8086:0000]
Kernel driver in use: igb
Kernel modules: igb
02:00.0 Ethernet controller [0200]: Intel Corporation I211 Gigabit Network Connection [8086:1539] (rev 03)
Subsystem: Intel Corporation I211 Gigabit Network Connection [8086:0000]
Kernel modules: igb
$ modinfo igb | grep version
version: 5.6.0-k
srcversion: DE47A70A6B9B9EA6E537E51
$
I suggest you try with the built-in version first.
Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.
clean chroot building not flexible enough ?
Try clean chroot manager by graysky
Online