I am trying to build the ice driver version 1.13.7 and I get an error when make
I do:
./configure --no-apps --disable-vale --disable-generic --disable-ptnetmap --drivers=ice --select-version=ice:1.13.7 && make
and when make, I get an error:
make[3]: Entering directory '/usr/src/linux-headers-6.1.0-18-amd64'
CC [M] /home/t1mbo/git/netmap/ice-1.13.7/src/ice_main.o
In file included from /home/t1mbo/git/netmap/ice-1.13.7/src/ice_main.c:112:
/home/t1mbo/git/netmap/LINUX/ice_netmap_linux.h: In function ‘ice_netmap_txsync’:
/home/t1mbo/git/netmap/LINUX/ice_netmap_linux.h:56:13: error: assignment to ‘struct ice_ring *’ from incompatible pointer type ‘struct ice_tx_ring *’ [-Werror=incompatible-pointer-types]
56 | txr = vsi->tx_rings[kring->ring_id];
| ^
In file included from /usr/src/linux-headers-6.1.0-18-common/include/linux/export.h:33,
from /usr/src/linux-headers-6.1.0-18-common/include/linux/linkage.h:7,
from /usr/src/linux-headers-6.1.0-18-common/include/linux/crash_core.h:5,
from /usr/src/linux-headers-6.1.0-18-common/include/linux/kexec.h:18,
from /usr/src/linux-headers-6.1.0-18-common/include/linux/crash_dump.h:5,
from /home/t1mbo/git/netmap/ice-1.13.7/src/ice_main.c:8:
/home/t1mbo/git/netmap/LINUX/ice_netmap_linux.h:57:34: error: invalid use of undefined type ‘struct ice_ring’
57 | if (unlikely(!txr || !txr->desc)) {
| ^~
/usr/src/linux-headers-6.1.0-18-common/include/linux/compiler.h:78:45: note: in definition of macro ‘unlikely’
78 | # define unlikely(x) __builtin_expect(!!(x), 0)
| ^
In file included from /home/t1mbo/git/netmap/ice-1.13.7/src/ice_main.c:9:
/home/t1mbo/git/netmap/ice-1.13.7/src/ice.h:217:57: error: invalid use of undefined type ‘struct ice_ring’
217 | #define ICE_TX_DESC(R, i) (&(((struct ice_tx_desc *)((R)->desc))[i]))
| ^~
/home/t1mbo/git/netmap/ice-1.13.7/src/ice.h:217:57: note: in definition of macro ‘ICE_TX_DESC’
217 | #define ICE_TX_DESC(R, i) (&(((struct ice_tx_desc *)((R)->desc))[i]))
| ^~
/home/t1mbo/git/netmap/ice-1.13.7/src/ice.h:217:57: error: invalid use of undefined type ‘struct ice_ring’
217 | #define ICE_TX_DESC(R, i) (&(((struct ice_tx_desc *)((R)->desc))[i]))
| ^~
/home/t1mbo/git/netmap/ice-1.13.7/src/ice.h:217:57: note: in definition of macro ‘ICE_TX_DESC’
217 | #define ICE_TX_DESC(R, i) (&(((struct ice_tx_desc *)((R)->desc))[i]))
| ^~
/home/t1mbo/git/netmap/ice-1.13.7/src/ice.h:217:57: error: invalid use of undefined type ‘struct ice_ring’
217 | #define ICE_TX_DESC(R, i) (&(((struct ice_tx_desc *)((R)->desc))[i]))
| ^~
/home/t1mbo/git/netmap/ice-1.13.7/src/ice.h:217:57: note: in definition of macro ‘ICE_TX_DESC’
217 | #define ICE_TX_DESC(R, i) (&(((struct ice_tx_desc *)((R)->desc))[i]))
| ^~
/home/t1mbo/git/netmap/LINUX/ice_netmap_linux.h:159:34: error: invalid use of undefined type ‘struct ice_ring’
159 | writel(nic_i, txr->tail);
| ^~
/home/t1mbo/git/netmap/LINUX/ice_netmap_linux.h:165:20: error: invalid use of undefined type ‘struct ice_ring’
165 | nic_i = txr->next_to_clean;
| ^~
/home/t1mbo/git/netmap/ice-1.13.7/src/ice.h:217:57: error: invalid use of undefined type ‘struct ice_ring’
217 | #define ICE_TX_DESC(R, i) (&(((struct ice_tx_desc *)((R)->desc))[i]))
| ^~
/home/t1mbo/git/netmap/ice-1.13.7/src/ice.h:217:57: note: in definition of macro ‘ICE_TX_DESC’
217 | #define ICE_TX_DESC(R, i) (&(((struct ice_tx_desc *)((R)->desc))[i]))
| ^~
/home/t1mbo/git/netmap/LINUX/ice_netmap_linux.h:186:20: error: invalid use of undefined type ‘struct ice_ring’
186 | txr->next_to_clean = nic_i;
| ^~
/home/t1mbo/git/netmap/LINUX/ice_netmap_linux.h: In function ‘ice_netmap_rxsync’:
/home/t1mbo/git/netmap/LINUX/ice_netmap_linux.h:228:13: error: assignment to ‘struct ice_ring *’ from incompatible pointer type ‘struct ice_rx_ring *’ [-Werror=incompatible-pointer-types]
228 | rxr = vsi->rx_rings[kring->ring_id];
| ^
/home/t1mbo/git/netmap/LINUX/ice_netmap_linux.h:229:34: error: invalid use of undefined type ‘struct ice_ring’
229 | if (unlikely(!rxr || !rxr->desc)) {
| ^~
/usr/src/linux-headers-6.1.0-18-common/include/linux/compiler.h:78:45: note: in definition of macro ‘unlikely’
78 | # define unlikely(x) __builtin_expect(!!(x), 0)
| ^
/home/t1mbo/git/netmap/LINUX/ice_netmap_linux.h:260:28: error: invalid use of undefined type ‘struct ice_ring’
260 | nic_i = rxr->next_to_clean; // or also k2n(kring->nr_hwtail)
| ^~
/home/t1mbo/git/netmap/ice-1.13.7/src/ice.h:218:65: error: invalid use of undefined type ‘struct ice_ring’
218 | #define ICE_RX_DESC(R, i) (&(((union ice_32b_rx_flex_desc *)((R)->desc))[i]))
| ^~
/home/t1mbo/git/netmap/ice-1.13.7/src/ice.h:218:65: note: in definition of macro ‘ICE_RX_DESC’
218 | #define ICE_RX_DESC(R, i) (&(((union ice_32b_rx_flex_desc *)((R)->desc))[i]))
| ^~
/home/t1mbo/git/netmap/LINUX/ice_netmap_linux.h:305:28: error: invalid use of undefined type ‘struct ice_ring’
305 | rxr->next_to_clean = nic_i;
| ^~
/home/t1mbo/git/netmap/ice-1.13.7/src/ice.h:218:65: error: invalid use of undefined type ‘struct ice_ring’
218 | #define ICE_RX_DESC(R, i) (&(((union ice_32b_rx_flex_desc *)((R)->desc))[i]))
| ^~
/home/t1mbo/git/netmap/ice-1.13.7/src/ice.h:218:65: note: in definition of macro ‘ICE_RX_DESC’
218 | #define ICE_RX_DESC(R, i) (&(((union ice_32b_rx_flex_desc *)((R)->desc))[i]))
| ^~
/home/t1mbo/git/netmap/LINUX/ice_netmap_linux.h:356:34: error: invalid use of undefined type ‘struct ice_ring’
356 | writel(nic_i, rxr->tail);
| ^~
cc1: some warnings being treated as errors
make[4]: *** [/usr/src/linux-headers-6.1.0-18-common/scripts/Makefile.build:255: /home/t1mbo/git/netmap/ice-1.13.7/src/ice_main.o] Error 1
make[3]: *** [/usr/src/linux-headers-6.1.0-18-common/Makefile:2039: /home/t1mbo/git/netmap/ice-1.13.7/src] Error 2
make[3]: Leaving directory '/usr/src/linux-headers-6.1.0-18-amd64'
make[2]: *** [Makefile:250: __sub-make] Error 2
make[2]: Leaving directory '/usr/src/linux-headers-6.1.0-18-common'
make[1]: *** [Makefile:180: all] Error 2
make[1]: Leaving directory '/home/t1mbo/git/netmap/ice-1.13.7/src'
make: *** [netmap.mak:88: build-ice] Error 2
I found a similar issue, then I found a commit that fixes this bug in version 1.12.7, but the patch for 1.13.7 looks exactly the same.
Hi!
I use:
I am trying to build the ice driver version 1.13.7 and I get an error when make I do:
./configure --no-apps --disable-vale --disable-generic --disable-ptnetmap --drivers=ice --select-version=ice:1.13.7 && make
and when make, I get an error:
I found a similar issue, then I found a commit that fixes this bug in version 1.12.7, but the patch for 1.13.7 looks exactly the same.
Can you help with solving the problem?