Giter Site home page Giter Site logo

Comments (11)

GoogleCodeExporter avatar GoogleCodeExporter commented on August 28, 2024
There are two separate issues here:
- CONFIG_E1000E should be left at the original value, namely 'm'. There must be 
some unclear instructions in the README, can you please point out the passage 
that lead you to make that change? Also, please revert to the initial makefile, 
then run 'make clean' and then retry.
- our e1000e and igb patches are failing on your kernel. Can you please attach 
a tar.gz of the e1000e and igb directories as left by the failed make?

Original comment by giuseppe.lettieri73 on 16 Aug 2014 at 10:46

  • Changed state: Started
  • Added labels: ****
  • Removed labels: ****

from netmap.

GoogleCodeExporter avatar GoogleCodeExporter commented on August 28, 2024
- CONFIG_E1000E should be left at the original value, namely 'm'. There must be 
some unclear instructions in the README, can you please point out the passage 
that lead you to make that change? Also, please revert to the initial makefile, 
then run 'make clean' and then retry.

answer: I followed this guide: 
https://cnp.neclab.eu/getting-started/#modular-vale (Attach and detach NICs 
to/from the switch)

- our e1000e and igb patches are failing on your kernel. Can you please attach 
a tar.gz of the e1000e and igb directories as left by the failed make?

answer: I'm trying to attach tar.gz file but I receive a bad request page. Is 
there any other way to send you this tar.gz (like mail)?

Thank you.

Original comment by [email protected] on 16 Aug 2014 at 5:14

  • Added labels: ****
  • Removed labels: ****

from netmap.

GoogleCodeExporter avatar GoogleCodeExporter commented on August 28, 2024
yes, of course. Please send me the tar.gz to [email protected]

Original comment by giuseppe.lettieri73 on 17 Aug 2014 at 6:17

  • Added labels: ****
  • Removed labels: ****

from netmap.

GoogleCodeExporter avatar GoogleCodeExporter commented on August 28, 2024
Hi, I sent to you the files that you ask me.

Original comment by [email protected] on 18 Aug 2014 at 2:37

  • Added labels: ****
  • Removed labels: ****

from netmap.

GoogleCodeExporter avatar GoogleCodeExporter commented on August 28, 2024
thanks. Your e1000e, igb and virtio_net drivers contain some additional patches 
wrt the stock ones in linux 3.2.0 vanilla, and therefore out standard patches 
don't work. If you don't need igb and virtio_net, you can remove the relevant 
patches, do that the Makefile will not try to compile them:

rm patches/diff--igb--*
rm patches/diff--virtio_net.c--*

For e1000e I have applied the required bits manually and produced the attached 
diff--e1000e--30100--30400. Just put the the file in the patches directory and 
then run:

make clean
make

Original comment by giuseppe.lettieri73 on 18 Aug 2014 at 3:19

  • Added labels: ****
  • Removed labels: ****

Attachments:

from netmap.

GoogleCodeExporter avatar GoogleCodeExporter commented on August 28, 2024
I did some tests, but I got the same error.

First, I did what you asked me (remove igb and virtio diff patches and included 
diff--e1000e--30100--30400). Another test that I did was remove all diff files 
and put only diff--e1000e--30100--30400. I removed all modules from makefile 
but in all these cenarios I got the same error.

Downgrade my kernel is unfeasible.

Do you have any other idea?


# make
LIN_VER 3023c
---- Building from /lib/modules/3.2.0-4-amd64/build/drivers/net/ethernet
---- copying e1000e ---
  From /lib/modules/3.2.0-4-amd64/build/drivers/net/ethernet/nvidia :
  From /lib/modules/3.2.0-4-amd64/build/drivers/net/ethernet/realtek :
  From /lib/modules/3.2.0-4-amd64/build/drivers/net/ethernet/intel :
    drwxr-xr-x 2 root root 4096 Ago 12 23:33 e1000e/
  From /lib/modules/3.2.0-4-amd64/build/drivers/net/ethernet/broadcom :
    -rw-r--r-- 1 root root 8466 Ago 12 16:17 cnic_if.h
  From /lib/modules/3.2.0-4-amd64/build/drivers/net/ethernet :
  From /lib/modules/3.2.0-4-amd64/build/drivers/net :
** patch with diff--e1000e--30100--30400
Building the following drivers: e1000e
make -C /lib/modules/3.2.0-4-amd64/build M=/root/netmap/LINUX CONFIG_NETMAP=m 
CONFIG_E1000E=m \
                EXTRA_CFLAGS='-I/root/netmap/LINUX -I/root/netmap/LINUX/../sys -I/root/netmap/LINUX/../sys/dev -DCONFIG_NETMAP -Wno-unused-but-set-variable' \
                O_DRIVERS="e1000e/" modules
make[1]: Entrando no diretório `/usr/src/linux-headers-3.2.0-4-amd64'
  CC [M]  /root/netmap/LINUX/netmap.o
  CC [M]  /root/netmap/LINUX/netmap_mem2.o
  CC [M]  /root/netmap/LINUX/netmap_generic.o
  CC [M]  /root/netmap/LINUX/netmap_mbq.o
  CC [M]  /root/netmap/LINUX/netmap_vale.o
  CC [M]  /root/netmap/LINUX/netmap_offloadings.o
  CC [M]  /root/netmap/LINUX/netmap_pipe.o
  CC [M]  /root/netmap/LINUX/netmap_linux.o
  LD [M]  /root/netmap/LINUX/netmap_lin.o
  CC [M]  /root/netmap/LINUX/e1000e/netdev.o
In file included from /root/netmap/LINUX/e1000e/netdev.c:464:0:
/root/netmap/LINUX/if_e1000e_netmap.h:48:2: warning: #warning this driver uses 
extended descriptors [-Wcpp]
/root/netmap/LINUX/if_e1000e_netmap.h: In function âe1000_netmap_regâ:
/root/netmap/LINUX/if_e1000e_netmap.h:88:3: error: too few arguments to 
function âe1000e_downâ
In file included from /root/netmap/LINUX/e1000e/netdev.c:49:0:
/root/netmap/LINUX/e1000e/e1000.h:541:13: note: declared here
In file included from /root/netmap/LINUX/e1000e/netdev.c:464:0:
/root/netmap/LINUX/if_e1000e_netmap.h: In function âe1000_netmap_txsyncâ:
/root/netmap/LINUX/if_e1000e_netmap.h:176:3: error: invalid operands to binary 
+ (have âvoid *â and âvoid *â)
/root/netmap/LINUX/if_e1000e_netmap.h:185:11: error: invalid operands to binary 
+ (have âvoid *â and âvoid *â)
/root/netmap/LINUX/if_e1000e_netmap.h: In function âe1000_netmap_rxsyncâ:
/root/netmap/LINUX/if_e1000e_netmap.h:289:3: error: invalid operands to binary 
+ (have âvoid *â and âvoid *â)
/root/netmap/LINUX/if_e1000e_netmap.h: In function 
âe1000e_netmap_init_buffersâ:
/root/netmap/LINUX/if_e1000e_netmap.h:346:2: error: invalid operands to binary 
+ (have âvoid *â and âvoid *â)
/root/netmap/LINUX/e1000e/netdev.c: In function âe1000e_upâ:
/root/netmap/LINUX/e1000e/netdev.c:4502:26: error: ânetdevâ undeclared (first 
use in this function)
/root/netmap/LINUX/e1000e/netdev.c:4502:26: note: each undeclared identifier is 
reported only once for each function it appears in
/root/netmap/LINUX/e1000e/netdev.c: In function â__e1000_maybe_stop_txâ:
/root/netmap/LINUX/e1000e/netdev.c:6172:27: error: ânetdevâ undeclared (first 
use in this function)
make[3]: ** [/root/netmap/LINUX/e1000e/netdev.o] Erro 1
make[2]: ** [/root/netmap/LINUX/e1000e] Erro 2
make[1]: ** [_module_/root/netmap/LINUX] Erro 2
make[1]: Saindo do diretório `/usr/src/linux-headers-3.2.0-4-amd64'
make: ** [build] Erro 2
root@clickos:~/netmap/LINUX#

Original comment by [email protected] on 19 Aug 2014 at 6:13

  • Added labels: ****
  • Removed labels: ****

from netmap.

GoogleCodeExporter avatar GoogleCodeExporter commented on August 28, 2024
my fault. The patch I gave you contained some error, plus you also need an 
updated if_e1000e_netmap.h. Please replace the corresponding files in LINUX 
with the attached files, then 'make clean' and 'make' as before. If you only 
need e1000e, is perfectly fine to delete all other patches.

Original comment by giuseppe.lettieri73 on 19 Aug 2014 at 7:46

  • Added labels: ****
  • Removed labels: ****

Attachments:

from netmap.

GoogleCodeExporter avatar GoogleCodeExporter commented on August 28, 2024
result:

error in NM_WR_TX_TAIL(nic_i)

I'll work in this error too, and I'll report some evolution.

Thank you.

# make
LIN_VER 3023c
---- Building from /lib/modules/3.2.0-4-amd64/build/drivers/net/ethernet
---- copying e1000e ---
  From /lib/modules/3.2.0-4-amd64/build/drivers/net/ethernet/nvidia :
  From /lib/modules/3.2.0-4-amd64/build/drivers/net/ethernet/realtek :
  From /lib/modules/3.2.0-4-amd64/build/drivers/net/ethernet/intel :
    drwxr-xr-x 2 root root 4096 Ago 12 23:33 e1000e/
  From /lib/modules/3.2.0-4-amd64/build/drivers/net/ethernet/broadcom :
    -rw-r--r-- 1 root root 8466 Ago 12 16:17 cnic_if.h
  From /lib/modules/3.2.0-4-amd64/build/drivers/net/ethernet :
  From /lib/modules/3.2.0-4-amd64/build/drivers/net :
** patch with diff--e1000e--30100--30400
Building the following drivers: e1000e
make -C /lib/modules/3.2.0-4-amd64/build M=/root/netmap/LINUX CONFIG_NETMAP=m 
CONFIG_E1000E=m \
                EXTRA_CFLAGS='-I/root/netmap/LINUX -I/root/netmap/LINUX/../sys -I/root/netmap/LINUX/../sys/dev -DCONFIG_NETMAP -Wno-unused-but-set-variable' \
                O_DRIVERS="e1000e/" modules
make[1]: Entrando no diretório `/usr/src/linux-headers-3.2.0-4-amd64'
  CC [M]  /root/netmap/LINUX/netmap.o
  CC [M]  /root/netmap/LINUX/netmap_mem2.o
  CC [M]  /root/netmap/LINUX/netmap_generic.o
  CC [M]  /root/netmap/LINUX/netmap_mbq.o
  CC [M]  /root/netmap/LINUX/netmap_vale.o
  CC [M]  /root/netmap/LINUX/netmap_offloadings.o
  CC [M]  /root/netmap/LINUX/netmap_pipe.o
  CC [M]  /root/netmap/LINUX/netmap_linux.o
  LD [M]  /root/netmap/LINUX/netmap_lin.o
  CC [M]  /root/netmap/LINUX/e1000e/netdev.o
In file included from /root/netmap/LINUX/e1000e/netdev.c:464:0:
/root/netmap/LINUX/if_e1000e_netmap.h:48:2: warning: #warning this driver uses 
extended descriptors [-Wcpp]
/root/netmap/LINUX/if_e1000e_netmap.h: In function âe1000_netmap_txsyncâ:
/root/netmap/LINUX/if_e1000e_netmap.h:176:3: error: invalid operands to binary 
+ (have âvoid *â and âvoid *â)
/root/netmap/LINUX/if_e1000e_netmap.h:185:11: error: invalid operands to binary 
+ (have âvoid *â and âvoid *â)
/root/netmap/LINUX/if_e1000e_netmap.h: In function âe1000_netmap_rxsyncâ:
/root/netmap/LINUX/if_e1000e_netmap.h:289:3: error: invalid operands to binary 
+ (have âvoid *â and âvoid *â)
/root/netmap/LINUX/if_e1000e_netmap.h: In function 
âe1000e_netmap_init_buffersâ:
/root/netmap/LINUX/if_e1000e_netmap.h:346:2: error: invalid operands to binary 
+ (have âvoid *â and âvoid *â)
make[3]: ** [/root/netmap/LINUX/e1000e/netdev.o] Erro 1
make[2]: ** [/root/netmap/LINUX/e1000e] Erro 2
make[1]: ** [_module_/root/netmap/LINUX] Erro 2
make[1]: Saindo do diretório `/usr/src/linux-headers-3.2.0-4-amd64'
make: ** [build] Erro 2
root@clickos:~/netmap/LINUX#


Original comment by [email protected] on 20 Aug 2014 at 1:09

  • Added labels: ****
  • Removed labels: ****

from netmap.

GoogleCodeExporter avatar GoogleCodeExporter commented on August 28, 2024
It's the same problem again, your e1000e driver is newer than the rest of your 
kernel. Unfortunately, I cannot test compilation by myself in this case. This 
latter error should be caused by if_e1000e_netmap.h, where we have:

...
#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 4, 0)
#define NM_WR_TX_TAIL(_x)       writel(_x, txr->tail)   // XXX tx_ring
#define NM_WR_RX_TAIL(_x)       writel(_x, rxr->tail)   // XXX rx_ring
#define NM_RD_TX_HEAD()         readl(txr->head)
#else
#define NM_WR_TX_TAIL(_x)       writel(_x, adapter->hw.hw_addr + txr->tail)
#define NM_WR_RX_TAIL(_x)       writel(_x, adapter->hw.hw_addr + rxr->tail)
#define NM_RD_TX_HEAD()         readl(adapter->hw.hw_addr + txr->head)
#endif /* < 3.4.0 */
...

This does not work for you, since you have a 3.2 kernel, but your e1000e driver 
contains code from much later kernels. Can you please try to replace the "4" in 
"KERNEL_VERSION_CODE(3, 4, 0)"  with a "2" and see if that helps?

Original comment by giuseppe.lettieri73 on 20 Aug 2014 at 1:48

  • Added labels: ****
  • Removed labels: ****

from netmap.

GoogleCodeExporter avatar GoogleCodeExporter commented on August 28, 2024
Ohhhh !!! Great !!!!

# make
LIN_VER 3023c
---- Building from /lib/modules/3.2.0-4-amd64/build/drivers/net/ethernet
---- copying e1000e ---
  From /lib/modules/3.2.0-4-amd64/build/drivers/net/ethernet/nvidia :
  From /lib/modules/3.2.0-4-amd64/build/drivers/net/ethernet/realtek :
  From /lib/modules/3.2.0-4-amd64/build/drivers/net/ethernet/intel :
    drwxr-xr-x 2 root root 4096 Ago 12 23:33 e1000e/
  From /lib/modules/3.2.0-4-amd64/build/drivers/net/ethernet/broadcom :
    -rw-r--r-- 1 root root 8466 Ago 12 16:17 cnic_if.h
  From /lib/modules/3.2.0-4-amd64/build/drivers/net/ethernet :
  From /lib/modules/3.2.0-4-amd64/build/drivers/net :
** patch with diff--e1000e--30100--30400
Building the following drivers: e1000e
make -C /lib/modules/3.2.0-4-amd64/build M=/root/netmap/LINUX CONFIG_NETMAP=m 
CONFIG_E1000E=m \
                EXTRA_CFLAGS='-I/root/netmap/LINUX -I/root/netmap/LINUX/../sys -I/root/netmap/LINUX/../sys/dev -DCONFIG_NETMAP -Wno-unused-but-set-variable' \
                O_DRIVERS="e1000e/" modules
make[1]: Entrando no diretório `/usr/src/linux-headers-3.2.0-4-amd64'
  CC [M]  /root/netmap/LINUX/netmap.o
  CC [M]  /root/netmap/LINUX/netmap_mem2.o
  CC [M]  /root/netmap/LINUX/netmap_generic.o
  CC [M]  /root/netmap/LINUX/netmap_mbq.o
  CC [M]  /root/netmap/LINUX/netmap_vale.o
  CC [M]  /root/netmap/LINUX/netmap_offloadings.o
  CC [M]  /root/netmap/LINUX/netmap_pipe.o
  CC [M]  /root/netmap/LINUX/netmap_linux.o
  LD [M]  /root/netmap/LINUX/netmap_lin.o
  CC [M]  /root/netmap/LINUX/e1000e/netdev.o
In file included from /root/netmap/LINUX/e1000e/netdev.c:464:0:
/root/netmap/LINUX/if_e1000e_netmap.h:48:2: warning: #warning this driver uses 
extended descriptors [-Wcpp]
  CC [M]  /root/netmap/LINUX/e1000e/ethtool.o
  CC [M]  /root/netmap/LINUX/e1000e/param.o
  CC [M]  /root/netmap/LINUX/e1000e/82571.o
  CC [M]  /root/netmap/LINUX/e1000e/ich8lan.o
  CC [M]  /root/netmap/LINUX/e1000e/80003es2lan.o
  CC [M]  /root/netmap/LINUX/e1000e/mac.o
  CC [M]  /root/netmap/LINUX/e1000e/nvm.o
  CC [M]  /root/netmap/LINUX/e1000e/phy.o
  CC [M]  /root/netmap/LINUX/e1000e/manage.o
  CC [M]  /root/netmap/LINUX/e1000e/kcompat.o
  CC [M]  /root/netmap/LINUX/e1000e/ptp.o
  LD [M]  /root/netmap/LINUX/e1000e/e1000e.o
  Building modules, stage 2.
  MODPOST 2 modules
  CC      /root/netmap/LINUX/e1000e/e1000e.mod.o
  LD [M]  /root/netmap/LINUX/e1000e/e1000e.ko
  CC      /root/netmap/LINUX/netmap_lin.mod.o
  LD [M]  /root/netmap/LINUX/netmap_lin.ko
make[1]: Saindo do diretório `/usr/src/linux-headers-3.2.0-4-amd64'
-rw-r--r-- 1 root root 4807067 Ago 20 12:01 ./e1000e/e1000e.ko
-rw-r--r-- 1 root root 2403114 Ago 20 12:01 ./netmap_lin.ko

Thank you a lot Giuseppe.

Original comment by [email protected] on 20 Aug 2014 at 3:02

  • Added labels: ****
  • Removed labels: ****

from netmap.

GoogleCodeExporter avatar GoogleCodeExporter commented on August 28, 2024
You are welcome. For the future we are moving to a build system that does not 
rely on linux kernel versions, and hopefully this kinds of problems will be 
solved automatically.

I am closing the issue now.

Original comment by giuseppe.lettieri73 on 20 Aug 2014 at 3:09

  • Changed state: Done
  • Added labels: ****
  • Removed labels: ****

from netmap.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.