Requesting help in Netmap build on Linux Ubuntu-12.04

Harsha Navada navada at usc.edu
Tue Nov 29 03:10:11 UTC 2016


Follow up mail with Linux 2.6.32 kernel and netmap —

Here's another try with linux 2.6.32 for Ubuntu 10.04 that I'm trying: I get different errors where make doesn't seem to work. I might be doing some unspeakable errors but I would like to get this running as quickly as possible.
Code RED:

sc558bl at rtr1:/tmp/netmap-master/LINUX$ ./configure --kernel-sources=/tmp/linux-2.6.32/ --kernel-dir=/lib/modules/2.6.32/build
********************************** NOTE **********************************
*** We are trying to download the original sources for driver
*** i40e using the following command:

*** wget -nc https://sourceforge.net/projects/e1000/files/i40e%20stable/1.5.23/i40e-1.5.23.tar.gz <https://sourceforge.net/projects/e1000/files/i40e%20stable/1.5.23/i40e-1.5.23.tar.gz> -P /tmp/netmap-master/LINUX/ext-drivers/

*** If this fails, please download the above file and put it
*** in /tmp/netmap-master/LINUX/ext-drivers/, then run configure again.

File `/tmp/netmap-master/LINUX/ext-drivers/i40e-1.5.23.tar.gz' already there; not retrieving.

********************************** WARNING **********************************
*** CONFIG_I40E not set in /lib/modules/2.6.32/build/.config, skipping i40e

********************************** NOTE **********************************
*** We are trying to download the original sources for driver
*** ixgbevf using the following command:

*** wget -nc https://sourceforge.net/projects/e1000/files/ixgbevf%20stable/3.2.2/ixgbevf-3.2.2.tar.gz <https://sourceforge.net/projects/e1000/files/ixgbevf%20stable/3.2.2/ixgbevf-3.2.2.tar.gz> -P /tmp/netmap-master/LINUX/ext-drivers/

*** If this fails, please download the above file and put it
*** in /tmp/netmap-master/LINUX/ext-drivers/, then run configure again.

File `/tmp/netmap-master/LINUX/ext-drivers/ixgbevf-3.2.2.tar.gz' already there; not retrieving.

********************************** WARNING **********************************
*** CONFIG_IXGBEVF not set in /lib/modules/2.6.32/build/.config, skipping ixgbevf

********************************** NOTE **********************************
*** We are trying to download the original sources for driver
*** ixgbe using the following command:

*** wget -nc https://sourceforge.net/projects/e1000/files/ixgbe%20stable/4.4.6/ixgbe-4.4.6.tar.gz <https://sourceforge.net/projects/e1000/files/ixgbe%20stable/4.4.6/ixgbe-4.4.6.tar.gz> -P /tmp/netmap-master/LINUX/ext-drivers/

*** If this fails, please download the above file and put it
*** in /tmp/netmap-master/LINUX/ext-drivers/, then run configure again.

File `/tmp/netmap-master/LINUX/ext-drivers/ixgbe-4.4.6.tar.gz' already there; not retrieving.

********************************** NOTE **********************************
*** We are trying to download the original sources for driver
*** igb using the following command:

*** wget -nc https://sourceforge.net/projects/e1000/files/igb%20stable/5.3.5.3/igb-5.3.5.3.tar.gz <https://sourceforge.net/projects/e1000/files/igb%20stable/5.3.5.3/igb-5.3.5.3.tar.gz> -P /tmp/netmap-master/LINUX/ext-drivers/

*** If this fails, please download the above file and put it
*** in /tmp/netmap-master/LINUX/ext-drivers/, then run configure again.

File `/tmp/netmap-master/LINUX/ext-drivers/igb-5.3.5.3.tar.gz' already there; not retrieving.

********************************** NOTE **********************************
*** We are trying to download the original sources for driver
*** e1000e using the following command:

*** wget -nc https://sourceforge.net/projects/e1000/files/e1000e%20stable/3.3.5/e1000e-3.3.5.tar.gz <https://sourceforge.net/projects/e1000/files/e1000e%20stable/3.3.5/e1000e-3.3.5.tar.gz> -P /tmp/netmap-master/LINUX/ext-drivers/

*** If this fails, please download the above file and put it
*** in /tmp/netmap-master/LINUX/ext-drivers/, then run configure again.

File `/tmp/netmap-master/LINUX/ext-drivers/e1000e-3.3.5.tar.gz' already there; not retrieving.

********************************** WARNING **********************************
*** 'forcedeth.c': no applicable patch found and no override provided.
*** Disabling driver.

********************************** WARNING **********************************
*** 'virtio_net.c': no applicable patch found and no override provided.
*** Disabling driver.

********************************** NOTE **********************************
*** Now running compile tests to adapt the code to your
*** kernel version. Please wait.

kernel directory /lib/modules/2.6.32/build
kernel sources /tmp/linux-2.6.32
linux version 20620 [2.6.32]
module file netmap.ko

subsystems generic monitor pipe vale
apps vale-ctl nmreplay tlem lb bridge pkt-gen
native drivers ixgbe igb e1000e e1000 veth.c r8169.c

Contents of the drivers.mak file:

Note: only drivers for which both the @src <https://github.com/src> and the
@patch <https://github.com/patch> variable are set may be used in native mode (assuming
we can actually patch the sources).
Other NICs will be accessed using
the generic driver, at reduced performance.
########################################
# configure generated values #
########################################
ixgbe at conf := CONFIG_IXGBE
ixgbe at src := tar xf /tmp/netmap-master/LINUX/ext-drivers/ixgbe-4.4.6.tar.gz && mv ixgbe-4.4.6/src ixgbe
ixgbe at patch := patches/intel--ixgbe--4.4.6
igb at conf := CONFIG_IGB
igb at src := tar xf /tmp/netmap-master/LINUX/ext-drivers/igb-5.3.5.3.tar.gz && mv igb-5.3.5.3/src igb
igb at patch := patches/intel--igb--5.3.5.3
e1000e at conf := CONFIG_E1000E
e1000e at src := tar xf /tmp/netmap-master/LINUX/ext-drivers/e1000e-3.3.5.tar.gz && mv e1000e-3.3.5/src e1000e
e1000e at patch := patches/intel--e1000e--3.3.5
e1000 at conf := CONFIG_E1000
e1000 at src := cp -Rp /tmp/linux-2.6.32/drivers/net/e1000 e1000
e1000 at patch := patches/vanilla--e1000--20620--31200
veth.c at conf := CONFIG_VETH
veth.c at src := cp -Rp /tmp/linux-2.6.32/drivers/net/veth.c veth.c
veth.c at patch := patches/vanilla--veth.c--20620--30900
r8169.c at conf := CONFIG_R8169
r8169.c at src := cp -Rp /tmp/linux-2.6.32/drivers/net/r8169.c r8169.c
r8169.c at patch := patches/vanilla--r8169.c--20620--20625
sc558bl at rtr1:/tmp/netmap-master/LINUX$ make
wget -nc https://sourceforge.net/projects/e1000/files/ixgbe%20stable/4.4.6/ixgbe-4.4.6.tar.gz <https://sourceforge.net/projects/e1000/files/ixgbe%20stable/4.4.6/ixgbe-4.4.6.tar.gz> -P /tmp/netmap-master/LINUX/ext-drivers/
File `/tmp/netmap-master/LINUX/ext-drivers/ixgbe-4.4.6.tar.gz' already there; not retrieving.

tar xf /tmp/netmap-master/LINUX/ext-drivers/ixgbe-4.4.6.tar.gz && mv ixgbe-4.4.6/src ixgbe
patch --posix --quiet --force -p1 < patches/intel--ixgbe--4.4.6;
touch get-ixgbe
wget -nc https://sourceforge.net/projects/e1000/files/igb%20stable/5.3.5.3/igb-5.3.5.3.tar.gz <https://sourceforge.net/projects/e1000/files/igb%20stable/5.3.5.3/igb-5.3.5.3.tar.gz> -P /tmp/netmap-master/LINUX/ext-drivers/
File `/tmp/netmap-master/LINUX/ext-drivers/igb-5.3.5.3.tar.gz' already there; not retrieving.

tar xf /tmp/netmap-master/LINUX/ext-drivers/igb-5.3.5.3.tar.gz && mv igb-5.3.5.3/src igb
patch --posix --quiet --force -p1 < patches/intel--igb--5.3.5.3;
touch get-igb
wget -nc https://sourceforge.net/projects/e1000/files/e1000e%20stable/3.3.5/e1000e-3.3.5.tar.gz <https://sourceforge.net/projects/e1000/files/e1000e%20stable/3.3.5/e1000e-3.3.5.tar.gz> -P /tmp/netmap-master/LINUX/ext-drivers/
File `/tmp/netmap-master/LINUX/ext-drivers/e1000e-3.3.5.tar.gz' already there; not retrieving.

tar xf /tmp/netmap-master/LINUX/ext-drivers/e1000e-3.3.5.tar.gz && mv e1000e-3.3.5/src e1000e
patch --posix --quiet --force -p1 < patches/intel--e1000e--3.3.5;
touch get-e1000e
make -C /lib/modules/2.6.32/build M=/tmp/netmap-master/LINUX EXTRA_CFLAGS='-I/tmp/netmap-master/LINUX -I/tmp/netmap-master/LINUX -I/tmp/netmap-master/LINUX/../sys -I/tmp/netmap-master/LINUX/../sys/dev -DCONFIG_NETMAP -Wno-unused-but-set-variable -DCONFIG_NETMAP_GENERIC -DCONFIG_NETMAP_MONITOR -DCONFIG_NETMAP_PIPE -DCONFIG_NETMAP_VALE' modules CONFIG_NETMAP=m CONFIG_R8169=m CONFIG_VETH=m CONFIG_E1000=m O_DRIVERS="e1000/ r8169.o veth.o" NETMAP_DRIVER_SUFFIX=
make[1]: Entering directory `/tmp/linux-2.6.32'

WARNING: Symbol version dump /tmp/linux-2.6.32/Module.symvers
is missing; modules will have no dependencies and modversions.

CC [M] /tmp/netmap-master/LINUX/netmap_mem2.o
CC [M] /tmp/netmap-master/LINUX/netmap_mbq.o
CC [M] /tmp/netmap-master/LINUX/netmap_vale.o
/tmp/netmap-master/LINUX/../sys/dev/netmap/netmap_vale.c: In function ‘netmap_bdg_learning’:
/tmp/netmap-master/LINUX/../sys/dev/netmap/netmap_vale.c:1600: warning: integer constant is too large for ‘long’ type
At top level:
cc1: warning: unrecognized command line option "-Wno-unused-but-set-variable"
CC [M] /tmp/netmap-master/LINUX/netmap_offloadings.o
CC [M] /tmp/netmap-master/LINUX/netmap_pipe.o
CC [M] /tmp/netmap-master/LINUX/netmap_monitor.o
CC [M] /tmp/netmap-master/LINUX/netmap_generic.o
CC [M] /tmp/netmap-master/LINUX/netmap_common.o
CC [M] /tmp/netmap-master/LINUX/netmap_linux.o
/tmp/netmap-master/LINUX/netmap_linux.c:400:2: warning: #warning "Packet reception with emulated (generic) mode not supported for this kernel version"
/tmp/netmap-master/LINUX/netmap_linux.c:400:2: warning: #warning "Packet reception with emulated (generic) mode not supported for this kernel version"
LD [M] /tmp/netmap-master/LINUX/netmap.o
CC [M] /tmp/netmap-master/LINUX/r8169.o
CC [M] /tmp/netmap-master/LINUX/veth.o
CC [M] /tmp/netmap-master/LINUX/e1000/e1000_main.o
LD [M] /tmp/netmap-master/LINUX/e1000/e1000.o
Building modules, stage 2.
MODPOST 4 modules
LD [M] /tmp/netmap-master/LINUX/e1000/e1000.ko
CC /tmp/netmap-master/LINUX/netmap.mod.o
LD [M] /tmp/netmap-master/LINUX/netmap.ko
CC /tmp/netmap-master/LINUX/r8169.mod.o
LD [M] /tmp/netmap-master/LINUX/r8169.ko
CC /tmp/netmap-master/LINUX/veth.mod.o
LD [M] /tmp/netmap-master/LINUX/veth.ko
make[1]: Leaving directory /tmp/linux-2.6.32' if [ -d ixgbe ] && [ -e Module.symvers ]; then cp Module.symvers ixgbe; fi make -C ixgbe EXTRA_CFLAGS="-I/tmp/netmap-master/LINUX -I/tmp/netmap-master/LINUX -I/tmp/netmap-master/LINUX/../sys -I/tmp/netmap-master/LINUX/../sys/dev -DCONFIG_NETMAP -Wno-unused-but-set-variable -DCONFIG_NETMAP_GENERIC -DCONFIG_NETMAP_MONITOR -DCONFIG_NETMAP_PIPE -DCONFIG_NETMAP_VALE" NETMAP_DRIVER_SUFFIX= KSRC=/lib/modules/2.6.32/build make[1]: Entering directory/tmp/netmap-master/LINUX/ixgbe'
make[2]: Entering directory `/tmp/linux-2.6.32'

WARNING: Symbol version dump /tmp/linux-2.6.32/Module.symvers
is missing; modules will have no dependencies and modversions.

CC [M] /tmp/netmap-master/LINUX/ixgbe/ixgbe_main.o
In file included from /tmp/netmap-master/LINUX/ixgbe_netmap_linux.h:39,
from /tmp/netmap-master/LINUX/ixgbe/ixgbe_main.c:726:
/tmp/netmap-master/LINUX/bsd_glue.h:124:1: warning: "usleep_range" redefined
In file included from /tmp/netmap-master/LINUX/ixgbe/ixgbe_osdep.h:38,
from /tmp/netmap-master/LINUX/ixgbe/ixgbe_type.h:66,
from /tmp/netmap-master/LINUX/ixgbe/ixgbe_dcb.h:28,
from /tmp/netmap-master/LINUX/ixgbe/ixgbe.h:45,
from /tmp/netmap-master/LINUX/ixgbe/ixgbe_main.c:52:
/tmp/netmap-master/LINUX/ixgbe/kcompat.h:3363:1: warning: this is the location of the previous definition
In file included from /tmp/netmap-master/LINUX/ixgbe_netmap_linux.h:39,
from /tmp/netmap-master/LINUX/ixgbe/ixgbe_main.c:726:
/tmp/netmap-master/LINUX/bsd_glue.h:143:1: warning: "netdev_notifier_info_to_dev" redefined
In file included from /tmp/netmap-master/LINUX/ixgbe/ixgbe_osdep.h:38,
from /tmp/netmap-master/LINUX/ixgbe/ixgbe_type.h:66,
from /tmp/netmap-master/LINUX/ixgbe/ixgbe_dcb.h:28,
from /tmp/netmap-master/LINUX/ixgbe/ixgbe.h:45,
from /tmp/netmap-master/LINUX/ixgbe/ixgbe_main.c:52:
/tmp/netmap-master/LINUX/ixgbe/kcompat.h:4381:1: warning: this is the location of the previous definition
In file included from /tmp/netmap-master/LINUX/ixgbe_netmap_linux.h:39,
from /tmp/netmap-master/LINUX/ixgbe/ixgbe_main.c:726:
/tmp/netmap-master/LINUX/bsd_glue.h:147: error: redefinition of ‘_kc_skb_frag_size’
/tmp/netmap-master/LINUX/ixgbe/kcompat.h:3739: note: previous definition of ‘_kc_skb_frag_size’ was here
/tmp/netmap-master/LINUX/bsd_glue.h:152: error: redefinition of ‘_kc_skb_frag_address’
/tmp/netmap-master/LINUX/ixgbe/kcompat.h:3763: note: previous definition of ‘_kc_skb_frag_address’ was here
/tmp/netmap-master/LINUX/bsd_glue.h:157: error: redefinition of ‘_kc_skb_checksum_start_offset’
/tmp/netmap-master/LINUX/ixgbe/kcompat.h:3493: note: previous definition of ‘_kc_skb_checksum_start_offset’ was here
cc1: warning: unrecognized command line option "-Wno-unused-but-set-variable"
make[3]: *** [/tmp/netmap-master/LINUX/ixgbe/ixgbe_main.o] Error 1
make[2]: *** [module/tmp/netmap-master/LINUX/ixgbe] Error 2
make[2]: Leaving directory /tmp/linux-2.6.32' make[1]: *** [default] Error 2 make[1]: Leaving directory/tmp/netmap-master/LINUX/ixgbe'
make: *** [build-ixgbe] Error 2

drwxr-xr-x 3 sc558bl USC558L 4.0K 2016-11-28 19:00 ixgbe
sc558bl at rtr1:/tmp/netmap-master/LINUX$ ls -lrth | grep netmap
-rw-r--r-- 1 sc558bl USC558L 20K 2016-11-23 02:58 virtio_netmap.h
-rw-r--r-- 1 sc558bl USC558L 6.5K 2016-11-23 02:58 veth_netmap.h
-rwxr-xr-x 1 sc558bl USC558L 1.6K 2016-11-23 02:58 netmap_set_adapter.sh
-rw-r--r-- 1 sc558bl USC558L 40K 2016-11-23 02:58 netmap_ptnet.c
-rw-r--r-- 1 sc558bl USC558L 4.4K 2016-11-23 02:58 netmap.mak.in
-rw-r--r-- 1 sc558bl USC558L 53K 2016-11-23 02:58 netmap_linux.c
-rw-r--r-- 1 sc558bl USC558L 20K 2016-11-23 02:58 ixgbe_netmap_linux.h
-rw-r--r-- 1 sc558bl USC558L 9.2K 2016-11-23 02:58 if_re_netmap_linux.h
-rw-r--r-- 1 sc558bl USC558L 12K 2016-11-23 02:58 if_igb_netmap.h
-rw-r--r-- 1 sc558bl USC558L 9.8K 2016-11-23 02:58 if_e1000_netmap.h
-rw-r--r-- 1 sc558bl USC558L 11K 2016-11-23 02:58 if_e1000e_netmap.h
-rw-r--r-- 1 sc558bl USC558L 17K 2016-11-23 02:58 i40e_netmap_linux.h
-rw-r--r-- 1 sc558bl USC558L 12K 2016-11-23 02:58 forcedeth_netmap.h
lrwxrwxrwx 1 sc558bl USC558L 38 2016-11-28 18:56 patches -> /tmp/netmap-master/LINUX/final-patches
lrwxrwxrwx 1 sc558bl USC558L 39 2016-11-28 18:56 GNUmakefile -> /tmp/netmap-master/LINUX/../GNUmakefile
-rw-r--r-- 1 sc558bl USC558L 4.5K 2016-11-28 19:00 netmap.mak
drwxr-xr-x 10 sc558bl USC558L 4.0K 2016-11-28 19:00 netmap-tmpdir
-rw-r--r-- 1 sc558bl USC558L 1.1K 2016-11-28 19:00 netmap_linux_config.h
-rw-r--r-- 1 sc558bl USC558L 216K 2016-11-28 19:00 netmap_mem2.o
-rw-r--r-- 1 sc558bl USC558L 145K 2016-11-28 19:00 netmap_mbq.o
-rw-r--r-- 1 sc558bl USC558L 234K 2016-11-28 19:00 netmap_vale.o
-rw-r--r-- 1 sc558bl USC558L 173K 2016-11-28 19:00 netmap_pipe.o
-rw-r--r-- 1 sc558bl USC558L 163K 2016-11-28 19:00 netmap_offloadings.o
-rw-r--r-- 1 sc558bl USC558L 174K 2016-11-28 19:00 netmap_monitor.o
-rw-r--r-- 1 sc558bl USC558L 174K 2016-11-28 19:00 netmap_generic.o
-rw-r--r-- 1 sc558bl USC558L 250K 2016-11-28 19:00 netmap_common.o
-rw-r--r-- 1 sc558bl USC558L 1.8M 2016-11-28 19:00 netmap.o
-rw-r--r-- 1 sc558bl USC558L 245K 2016-11-28 19:00 netmap_linux.o
-rw-r--r-- 1 sc558bl USC558L 37K 2016-11-28 19:00 netmap.mod.o
-rw-r--r-- 1 sc558bl USC558L 602 2016-11-28 19:00 netmap.mod.c
-rw-r--r-- 1 sc558bl USC558L 1.8M 2016-11-28 19:00 netmap.ko

sc558bl at rtr1:/tmp/netmap-master/LINUX$ dmesg | tail
[ 141.456135] e1000e: eth0 NIC Link is Down
[ 143.456909] e1000e: eth0 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None
[ 150.908064] eth0: no IPv6 routers present
[ 1065.480088] e1000e 0000:04:00.1: PCI INT B disabled
[ 1065.544079] e1000e 0000:04:00.0: PCI INT A disabled
[ 1065.625066] e1000e 0000:03:00.1: PCI INT B disabled
[ 1066.144056] e1000e 0000:03:00.0: PCI INT A disabled
[ 1138.077603] netmap: no symbol version for module_layout
[ 1435.387913] netmap: no symbol version for module_layout
[ 1439.776021] netmap: no symbol version for module_layout
sc558bl at rtr1:/tmp/netmap-master/LINUX$

I would like to add that I'm trying to insert netmap patch for e1000e driver before which I have to install netmap.ko module.
> On Nov 28, 2016, at 4:54 PM, Harsha Navada <navada at usc.edu> wrote:
> 
> Hello ,
> 
> I’m new to netmap where I’m trying to insert netmap.ko module after compiling my kernel and I’m shown with the following error:
> 
> netmap: Unknown symbol split_page (err 0)
> 
> Here are the steps and different methods I followed: 
> 
> I. Compile Kernel 3.2.0
> 
> 1. My Ubuntu 12.04 machine has a kernel version 3.2.0-90-generic, so i got the linux source by:
> 	sudo apt-get source linux-source-3.2.0
> 2. Then i work on trying to compile the kernel
> 	a. sudo make menuconfig — Keep default config
> 	b. sudo sed -i s/CONFIG_RTS5139=m/CONFIG_RTS5139=n/ .config  - to avoid compilation errors
> 	c. sudo make clean
> 	d. sudo make -j10
> 	e. sudo make bzImage
> 	f. sudo make modules
> 	g.sudo make modules_install
> 	h. sudo make install
> 	i. sudo update-grub2
> 	j. sudo reboot. 
> 2 b. On checking kernel version using name -r , this is the kernel version - 3.2.79
> 
> 3. Then i download the netmap-master branch from git and upload it to my machine , cannot use git clone as it doesn’t support external connections.
> 4.Unzipping the bundle and switch to LINUX folder to run ./configure
> 5. Here i received errors where netmap-master/LINUX/drivers/ext-patch couldn’t be downloaded due to failure to connect.
> 6. I downloaded these drivers and placed them in that path.
> 7. I received a warning telling cannot find complete kernel sources, which i referenced later as 
> 	./configure —kernel-sources = /lib/modules/linux-source-(uname -r)/build
> 8. Then after clearing all warning and errors, the generated netmap.ko file I try to insert , which gives me the error
>  netmap: Unknown symbol split_page (err 0)
> 
> II. Avoid kernel compliation
> 1. Then i download the netmap-master branch from git and upload it to my machine , cannot use git clone as it doesn’t support external connections.
> 2.Unzipping the bundle and switch to LINUX folder to run ./configure
> 3. Here i received errors where netmap-master/LINUX/drivers/ext-patch couldn’t be downloaded due to failure to connect.
> 4. I downloaded these drivers and placed them in that path.
> 5. I received a warning telling cannot find complete kernel sources, which i referenced later as 
> 	./configure —kernel-sources = /lib/modules/linux-source-(uname -r)/build
> 6. Then after clearing all warning and errors, the generated netmap.ko file I try to insert , which gives me the error
>  netmap: Unknown symbol split_page (err 0)
> 
> III. Tried switching to FreeBSD
> 	Cannot download the FreeBSD 10.2 image due to security reasons mentioned in git / wget. 
> 
> I’m totally stuck for the past 2 weeks and would appreciate help on this. 
> 
> Thanks 
> H
> 



More information about the freebsd-net mailing list