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

igb-5.13.16 fails to build on linux 6.1

m4t
Beginner
2,270 Views

Building on an Alpine Linux host running the current -lts kernel which is 6.1.30, logs attached. Basically a change of prototype of the netif_napi_add() function. The stub driver from the kernel has never worked properly on my adapter (an I350, quad ports). Is Intel working on this?

Labels (1)
0 Kudos
7 Replies
B_Y
Employee
2,222 Views

Hello @m4t,


Thank you for posting in Intel Ethernet Communities. 

I am sorry you are having issues with your Intel Ethernet Server Adapter I350, I will be glad to assist.


In order to investigate further about this, please provide a system report by running the Intel® System Support Utility for Linux (https://www.intel.com/content/www/us/en/download/18895/26735/intel-system-support-utility-for-the-linux-operating-system.html?).

 

Looking forward to your response.


Best regards,

BY_Intel

Intel Customer Support



0 Kudos
m4t
Beginner
2,212 Views

Hi @B_Y, thank for picking this up!

 

Just to clarify: I'm not having issues with the adapter itself. I am currently running it with the igb-5.13.16 driver from Intel on Linux 5.15 with no problem. The driver from the vanilla Linux kernel does not work though (I forgot what the errors were) but since I switched to the Intel driver the adapter works perfectly fine.

 

My problem is that the latest Intel igb driver does not build with more recent Linux kernels, e.g. the 6.1 branch. The issue has to do with a change in the NAPI driver model where the weight argument has been dropped. I attached the build logs to the previous post but here's the compiler error:

  CC [M]  /tmp/igb-5.13.16/src/igb_main.o
In file included from /tmp/igb-5.13.16/src/kcompat.h:7105,
                 from /tmp/igb-5.13.16/src/igb.h:32,
                 from /tmp/igb-5.13.16/src/igb_main.c:30:
/tmp/igb-5.13.16/src/kcompat_impl.h: In function '_kc_netif_napi_add':
/tmp/igb-5.13.16/src/kcompat_impl.h:1397:16: error: too many arguments to function 'netif_napi_add'
 1397 |         return netif_napi_add(dev, napi, poll, NAPI_POLL_WEIGHT);
      |                ^~~~~~~~~~~~~~
In file included from /tmp/igb-5.13.16/src/igb_main.c:9:
./include/linux/netdevice.h:2572:1: note: declared here
 2572 | netif_napi_add(struct net_device *dev, struct napi_struct *napi,
      | ^~~~~~~~~~~~~~
/tmp/igb-5.13.16/src/igb_main.c: In function 'igb_alloc_q_vector':
/tmp/igb-5.13.16/src/kcompat_impl.h:1404:24: error: too many arguments to function '_kc_netif_napi_add'
 1404 | #define netif_napi_add _kc_netif_napi_add
      |                        ^~~~~~~~~~~~~~~~~~
/tmp/igb-5.13.16/src/igb_main.c:1144:9: note: in expansion of macro 'netif_napi_add'
 1144 |         netif_napi_add(adapter->netdev, &q_vector->napi,
      |         ^~~~~~~~~~~~~~
/tmp/igb-5.13.16/src/kcompat_impl.h:1394:1: note: declared here
 1394 | _kc_netif_napi_add(struct net_device *dev, struct napi_struct *napi,
      | ^~~~~~~~~~~~~~~~~~
make[2]: *** [scripts/Makefile.build:250: /tmp/igb-5.13.16/src/igb_main.o] Error 1
make[1]: *** [Makefile:2012: /tmp/igb-5.13.16/src] Error 2
make: *** [Makefile:87: default] Error 2

I'd contribute a patch but I doubt this is an open-source project, at least I haven't found the official repo anywhere.

0 Kudos
B_Y
Employee
2,186 Views

Hello @m4t,


Thank you for your feedback.

We need your assistance in providing the precise Ethernet model: I350 (Eg command: lspci | grep -i Ethernet).


Best regards,

BY_Intel

Intel Customer Support


0 Kudos
m4t
Beginner
2,177 Views

Hello @B_Y ,

 

Sorry but the details of the adapter are completely irrelevant to the problem at hands. The adapter is fine. The problem is about compiling the igb driver. Coincidence or not, I just noticed that Intel did fix the driver and published it on sourceforge. Interestingly enough Intel's official driver page still points at the old version.

 

0 Kudos
B_Y
Employee
2,155 Views

Hello @m4t,

 

Thank you for your respond.

In the event that we need to seek out additional guidance, we needed your assistance in confirming the Ethernet model: I350.

SourceForge focuses mainly on software deployment; it offers the most recent fixes and lets developers mail in their suggestions.

It was published with a generic driver to allow universal features on Intel's public page.

Please let me know if I can be of any assistance.

 

Best regards,

BY_Intel

Intel Customer Support

 

0 Kudos
B_Y
Employee
2,119 Views

Hello @m4t,

 

I hope this message finds you well. I am just sending a follow up if you have any questions from the previous post. If so, please let us know. Thank you.

 

Best regards,

BY_Intel

Intel Customer Support 


0 Kudos
B_Y
Employee
1,980 Views

Hello @m4t,


Please be informed that we will now close this request since we haven't received any response from our previous follow ups. Just feel free to post a new question if you may have any other inquiry in the future as this thread will no longer be monitored.


Thank you.


Best regards,

BY_Intel

Intel Customer Support


0 Kudos
Reply