Ethernet Products
Determine ramifications of Intel® Ethernet products and technologies
5281 Discussions

Intel i40e-2.23.17 Driver Unable to Compile on ArchLinux

J_S1
Beginner
1,239 Views

Followed the read me on a fresh install of ArchLinux however I am encountering the following error:

make install
filtering include/net/flow_keys.h out
filtering include/linux/jump_label_type.h out
filtering include/linux/jump_label_type.h out
*** The target kernel has CONFIG_MODULE_SIG_ALL enabled, but
*** the signing key cannot be found. Module signing has been
*** disabled for this build.
make[1]: Entering directory '/usr/lib/modules/6.6.2-3-cachyos/build'
  CC [M]  /home/jacob/PRO40GB/Linux/i40e_main.o
In file included from /home/jacob/PRO40GB/Linux/i40e.h:70,
                 from /home/jacob/PRO40GB/Linux/i40e_main.c:8:
/home/jacob/PRO40GB/Linux/i40e_txrx.h:470:29: error: field ‘xdp_rxq’ has incomplete type
  470 |         struct xdp_rxq_info xdp_rxq;
      |                             ^~~~~~~
/home/jacob/PRO40GB/Linux/i40e_txrx.h: In function ‘xdp_get_len’:
/home/jacob/PRO40GB/Linux/i40e_txrx.h:600:19: error: invalid use of undefined type ‘struct xdp_frame’
  600 |         return xdp->len;
      |                   ^~
In file included from /home/jacob/PRO40GB/Linux/i40e_main.c:9:
/home/jacob/PRO40GB/Linux/i40e_helper.h: At top level:
/home/jacob/PRO40GB/Linux/i40e_helper.h:17:12: warning: conflicting types for ‘i40e_allocate_dma_mem_d’ due to enum/integer mismatch; have ‘int(struct i40e_hw *, struct i40e_dma_mem *, enum i40e_memory_type,  u64,  u32)’ {aka ‘int(struct i40e_hw *, struct i40e_dma_mem *, enum i40e_memory_type,  long long unsigned int,  unsigned int)’} [-Wenum-int-mismatch]
   17 | inline int i40e_allocate_dma_mem_d(struct i40e_hw *hw,
      |            ^~~~~~~~~~~~~~~~~~~~~~~
In file included from /home/jacob/PRO40GB/Linux/i40e_type.h:8,
                 from /home/jacob/PRO40GB/Linux/i40e.h:65:
/home/jacob/PRO40GB/Linux/i40e_osdep.h:64:25: note: previous declaration of ‘i40e_allocate_dma_mem_d’ with type ‘i40e_status(struct i40e_hw *, struct i40e_dma_mem *, enum i40e_memory_type,  u64,  u32)’ {aka ‘enum i40e_status_code(struct i40e_hw *, struct i40e_dma_mem *, enum i40e_memory_type,  long long unsigned int,  unsigned int)’}
   64 |                         i40e_allocate_dma_mem_d(h, m, unused, s, a)
      |                         ^~~~~~~~~~~~~~~~~~~~~~~
/home/jacob/PRO40GB/Linux/i40e_alloc.h:23:13: note: in expansion of macro ‘i40e_allocate_dma_mem’
   23 | i40e_status i40e_allocate_dma_mem(struct i40e_hw *hw,
      |             ^~~~~~~~~~~~~~~~~~~~~
/home/jacob/PRO40GB/Linux/i40e_helper.h:43:12: warning: conflicting types for ‘i40e_free_dma_mem_d’ due to enum/integer mismatch; have ‘int(struct i40e_hw *, struct i40e_dma_mem *)’ [-Wenum-int-mismatch]
   43 | inline int i40e_free_dma_mem_d(struct i40e_hw *hw, struct i40e_dma_mem *mem)
      |            ^~~~~~~~~~~~~~~~~~~
/home/jacob/PRO40GB/Linux/i40e_osdep.h:66:33: note: previous declaration of ‘i40e_free_dma_mem_d’ with type ‘i40e_status(struct i40e_hw *, struct i40e_dma_mem *)’ {aka ‘enum i40e_status_code(struct i40e_hw *, struct i40e_dma_mem *)’}
   66 | #define i40e_free_dma_mem(h, m) i40e_free_dma_mem_d(h, m)
      |                                 ^~~~~~~~~~~~~~~~~~~
/home/jacob/PRO40GB/Linux/i40e_alloc.h:27:13: note: in expansion of macro ‘i40e_free_dma_mem’
   27 | i40e_status i40e_free_dma_mem(struct i40e_hw *hw,
      |             ^~~~~~~~~~~~~~~~~
/home/jacob/PRO40GB/Linux/i40e_helper.h:61:12: warning: conflicting types for ‘i40e_allocate_virt_mem_d’ due to enum/integer mismatch; have ‘int(struct i40e_hw *, struct i40e_virt_mem *, u32)’ {aka ‘int(struct i40e_hw *, struct i40e_virt_mem *, unsigned int)’} [-Wenum-int-mismatch]
   61 | inline int i40e_allocate_virt_mem_d(struct i40e_hw *hw,
      |            ^~~~~~~~~~~~~~~~~~~~~~~~
/home/jacob/PRO40GB/Linux/i40e_osdep.h:73:41: note: previous declaration of ‘i40e_allocate_virt_mem_d’ with type ‘i40e_status(struct i40e_hw *, struct i40e_virt_mem *, u32)’ {aka ‘enum i40e_status_code(struct i40e_hw *, struct i40e_virt_mem *, unsigned int)’}
   73 | #define i40e_allocate_virt_mem(h, m, s) i40e_allocate_virt_mem_d(h, m, s)
      |                                         ^~~~~~~~~~~~~~~~~~~~~~~~
/home/jacob/PRO40GB/Linux/i40e_alloc.h:29:13: note: in expansion of macro ‘i40e_allocate_virt_mem’
   29 | i40e_status i40e_allocate_virt_mem(struct i40e_hw *hw,
      |             ^~~~~~~~~~~~~~~~~~~~~~
/home/jacob/PRO40GB/Linux/i40e_helper.h:79:12: warning: conflicting types for ‘i40e_free_virt_mem_d’ due to enum/integer mismatch; have ‘int(struct i40e_hw *, struct i40e_virt_mem *)’ [-Wenum-int-mismatch]
   79 | inline int i40e_free_virt_mem_d(struct i40e_hw *hw, struct i40e_virt_mem *mem)
      |            ^~~~~~~~~~~~~~~~~~~~
/home/jacob/PRO40GB/Linux/i40e_osdep.h:74:34: note: previous declaration of ‘i40e_free_virt_mem_d’ with type ‘i40e_status(struct i40e_hw *, struct i40e_virt_mem *)’ {aka ‘enum i40e_status_code(struct i40e_hw *, struct i40e_virt_mem *)’}
   74 | #define i40e_free_virt_mem(h, m) i40e_free_virt_mem_d(h, m)
      |                                  ^~~~~~~~~~~~~~~~~~~~
/home/jacob/PRO40GB/Linux/i40e_alloc.h:32:13: note: in expansion of macro ‘i40e_free_virt_mem’
   32 | i40e_status i40e_free_virt_mem(struct i40e_hw *hw,
      |             ^~~~~~~~~~~~~~~~~~
In file included from ./include/linux/device.h:15,
                 from ./include/linux/dma-mapping.h:8,
                 from ./include/linux/skbuff.h:28,
                 from ./include/linux/tcp.h:17,
                 from ./include/net/tcp.h:20,
                 from /home/jacob/PRO40GB/Linux/i40e.h:7:
/home/jacob/PRO40GB/Linux/i40e_main.c: In function ‘i40e_parse_cls_flower’:
/home/jacob/PRO40GB/Linux/i40e_main.c:9299:41: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 3 has type ‘long long unsigned int’ [-Wformat=]
 9299 |                 dev_err(&pf->pdev->dev, "Unsupported key used: 0x%x\n",
      |                                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./include/linux/dev_printk.h:110:30: note: in definition of macro ‘dev_printk_index_wrap’
  110 |                 _p_func(dev, fmt, ##__VA_ARGS__);                       \
      |                              ^~~
./include/linux/dev_printk.h:144:56: note: in expansion of macro ‘dev_fmt’
  144 |         dev_printk_index_wrap(_dev_err, KERN_ERR, dev, dev_fmt(fmt), ##__VA_ARGS__)
      |                                                        ^~~~~~~
/home/jacob/PRO40GB/Linux/i40e_main.c:9299:17: note: in expansion of macro ‘dev_err’
 9299 |                 dev_err(&pf->pdev->dev, "Unsupported key used: 0x%x\n",
      |                 ^~~~~~~
/home/jacob/PRO40GB/Linux/i40e_main.c:9299:67: note: format string is defined here
 9299 |                 dev_err(&pf->pdev->dev, "Unsupported key used: 0x%x\n",
      |                                                                  ~^
      |                                                                   |
      |                                                                   unsigned int
      |                                                                  %llx
/home/jacob/PRO40GB/Linux/i40e_main.c: In function ‘i40e_probe’:
/home/jacob/PRO40GB/Linux/i40e_main.c:17397:9: error: implicit declaration of function ‘pci_enable_pcie_error_reporting’ [-Werror=implicit-function-declaration]
17397 |         pci_enable_pcie_error_reporting(pdev);
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/jacob/PRO40GB/Linux/i40e_main.c:18019:9: error: implicit declaration of function ‘pci_disable_pcie_error_reporting’ [-Werror=implicit-function-declaration]
18019 |         pci_disable_pcie_error_reporting(pdev);
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cc1: some warnings being treated as errors
make[3]: *** [scripts/Makefile.build:243: /home/jacob/PRO40GB/Linux/i40e_main.o] Error 1
make[2]: *** [/usr/lib/modules/6.6.2-3-cachyos/build/Makefile:1916: /home/jacob/PRO40GB/Linux] Error 2
make[1]: *** [Makefile:234: __sub-make] Error 2
make[1]: Leaving directory '/usr/lib/modules/6.6.2-3-cachyos/build'
make: *** [Makefile:76: default] Error 2
0 Kudos
3 Replies
IntelSupport
Community Manager
1,206 Views

Hi J_S1,


Thank you for posting in Intel Communities.


Kindly provide us with the ArchLinux build,version,kernel and specifications that you are using.


From what we have checked - you are using the latest driver of 140e.


Can you please provide the Ethernet/NIC specifications that you are using as well as the driver version.


Let us know if you have any questions or any further details to be provided.


Regards,

Hayat

Intel Customer Support



0 Kudos
IntelSupport
Community Manager
1,175 Views

Hello J_S1,

 

Regarding your thread, we are following up to find out if you were able to complete the actions, we previously recommended.

 

Please reply to this thread to confirm, so we can continue helping with a resolution. Looking forward to receiving your reply!


Thank You


Regards,

Hayat

Intel® Customer Support


0 Kudos
IntelSupport
Community Manager
1,130 Views

Hello J_S1,

 

Regarding your thread, we are following up to find out if you were able to complete the actions, we previously recommended.

 

Please reply to this thread to confirm, so we can continue helping with a resolution. Looking forward to receiving your reply!


Else if no reply, we will proceed to close the case. Once the case is closed it will no longer be monitored by Intel.


Kindly open a new thread if you need further assistance.


Thank You


Regards,

Hayat

Intel® Customer Support


0 Kudos
Reply