Emulex OneConnect 10Gb NIC support?

1,175 views
Skip to first unread message

Danilo Godec

unread,
Dec 5, 2014, 3:50:47 AM12/5/14
to esos-...@googlegroups.com
Hello,

I have a server with Emulex Corporation OneConnect 10Gb NIC (be3) NIC -
this driver is available in kernel (at least on my desktop OpenSuSE) as
/lib/modules/3.0.101-91-default/kernel/drivers/net/benet/be2net.ko .

How would I go about adding support for this NIC?


Thanks,

Danilo

Marc Smith

unread,
Dec 5, 2014, 9:18:55 AM12/5/14
to esos-...@googlegroups.com
Hi,

I actually assumed this one was already enabled, but its not: CONFIG_BE2NET

This should compliment the Emulex OCS SDK SCST target driver (an ESOS build option) which would then provide network/Ethernet connectivity parallel to iSCSI/FCoE on the ESOS target side.

I've enabled the driver on my machine and will have this committed later today; for future reference, to enable an additional kernel driver for ESOS you'd follow the wiki page for building from source, and you'd simply edit the 'misc/linux-3.14.19.config' kernel configuration file before building.


--Marc


--
You received this message because you are subscribed to the Google Groups "esos-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to esos-users+...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Danilo Godec

unread,
Dec 6, 2014, 4:06:01 AM12/6/14
to esos-...@googlegroups.com
Thanks,

found it. I also enabled some VirtIO drivers, as I'd like to prepare a 'demo' where ESOS and it's 'clients' will be virtualised on KVM...

I followed https://code.google.com/p/enterprise-storage-os/wiki/11_Building to the 't', but building fails with:

/bin/sh ./libtool  --tag=CC   --mode=link gcc -specs=/home/danci/ESOS/esos/work/esos_build.spec -nostdinc -idirafter /usr/lib64/gcc/x86_64-suse-linux/4.5/include -idirafter /usr/lib64/gcc/x86_64-suse-linux/4.5/include-fixed -idirafter /home/danci/ESOS/esos/work/image/usr/include -idirafter /home/danci/ESOS/esos/work/kernel_headers/include -std=gnu99 -fsigned-char -fno-common -Wall -Werror=sequence-point -Wextra -Wmissing-declarations -Wmissing-parameter-type -Wmissing-prototypes -Wno-missing-field-initializers -Wredundant-decls -Wsign-compare -Wtype-limits -Wuninitialized -Wunused-parameter -Wunused-result -Wunused-variable -Wnested-externs -Wpointer-arith -Wstrict-prototypes -g -O2  -L/home/danci/ESOS/esos/work/image/lib -L/home/danci/ESOS/esos/work/image/usr/lib -Wl,-rpath-link,/home/danci/ESOS/esos/work/image/lib -Wl,-rpath-link,/home/danci/ESOS/esos/work/image/usr/lib -o unshare sys-utils/unshare.o  libcommon.la
libtool: link: gcc -specs=/home/danci/ESOS/esos/work/esos_build.spec -nostdinc -idirafter /usr/lib64/gcc/x86_64-suse-linux/4.5/include -idirafter /usr/lib64/gcc/x86_64-suse-linux/4.5/include-fixed -idirafter /home/danci/ESOS/esos/work/image/usr/include -idirafter /home/danci/ESOS/esos/work/kernel_headers/include -std=gnu99 -fsigned-char -fno-common -Wall -Werror=sequence-point -Wextra -Wmissing-declarations -Wmissing-parameter-type -Wmissing-prototypes -Wno-missing-field-initializers -Wredundant-decls -Wsign-compare -Wtype-limits -Wuninitialized -Wunused-parameter -Wunused-result -Wunused-variable -Wnested-externs -Wpointer-arith -Wstrict-prototypes -g -O2 -Wl,-rpath-link -Wl,/home/danci/ESOS/esos/work/image/lib -Wl,-rpath-link -Wl,/home/danci/ESOS/esos/work/image/usr/lib -o unshare sys-utils/unshare.o  -L/home/danci/ESOS/esos/work/image/lib -L/home/danci/ESOS/esos/work/image/usr/lib ./.libs/libcommon.a
depbase=`echo sys-utils/setpriv.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -specs=/home/danci/ESOS/esos/work/esos_build.spec -nostdinc -idirafter /usr/lib64/gcc/x86_64-suse-linux/4.5/include -idirafter /usr/lib64/gcc/x86_64-suse-linux/4.5/include-fixed -idirafter /home/danci/ESOS/esos/work/image/usr/include -idirafter /home/danci/ESOS/esos/work/kernel_headers/include -std=gnu99 -DHAVE_CONFIG_H -I.  -include config.h -I./include -DLOCALEDIR=\"/usr/share/locale\" -D_PATH_LOCALSTATEDIR=\"/run\" -idirafter /home/danci/ESOS/esos/work/image/usr/include -idirafter /home/danci/ESOS/esos/work/kernel_headers/include -fsigned-char -fno-common -Wall -Werror=sequence-point -Wextra -Wmissing-declarations -Wmissing-parameter-type -Wmissing-prototypes -Wno-missing-field-initializers -Wredundant-decls -Wsign-compare -Wtype-limits -Wuninitialized -Wunused-parameter -Wunused-result -Wunused-variable -Wnested-externs -Wpointer-arith -Wstrict-prototypes -g -O2 -MT sys-utils/setpriv.o -MD -MP -MF $depbase.Tpo -c -o sys-utils/setpriv.o sys-utils/setpriv.c &&\
mv -f $depbase.Tpo $depbase.Po
sys-utils/setpriv.c:21:20: fatal error: cap-ng.h: No such file or directory
compilation terminated.
make[4]: *** [sys-utils/setpriv.o] Error 1
make[4]: Leaving directory `/home/danci/ESOS/esos/work/build/util-linux-2.23.2'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/home/danci/ESOS/esos/work/build/util-linux-2.23.2'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/home/danci/ESOS/esos/work/build/util-linux-2.23.2'
make[1]: *** [util-linux] Error 2
make[1]: Leaving directory `/home/danci/ESOS/esos'
make: *** [all] Error 2


Since this is already past kernel I don't think it has anything to do with my config changes.

Build host is a 64-bit OpenSuSE 11.4 (Evergreen).

Any ideas?


     Danilo

Marc Smith

unread,
Dec 7, 2014, 12:36:33 PM12/7/14
to esos-...@googlegroups.com
Please try the attached patch. Update to the latest (r729) too. After applying the patch, you'll need to run ./configure again.

--Marc
util-linux.patch

Danilo Godec

unread,
Dec 7, 2014, 2:31:29 PM12/7/14
to esos-...@googlegroups.com
Thanks, tried it and now it gets past that and into the next problem:

cd /home/danci/ESOS/esos/work/build/curl-7.29.0 && LD_LIBRARY_PATH=/home/danci/ESOS/esos/work/image/usr/lib: \
./configure --prefix=/usr \
--disable-static --without-libssh2 --without-libidn
checking whether to enable maintainer-specific portions of Makefiles... no
checking whether to enable debug build options... no
checking whether to enable compiler optimizer... (assumed) yes
checking whether to enable strict compiler warnings... no
checking whether to enable compiler warnings as errors... no
checking whether to enable curl debug memory tracking... no
checking whether to enable hiding of library internal symbols... yes
checking whether to enable c-ares for DNS lookups... no
checking for path separator... :
checking for sed... /usr/bin/sed
checking for grep... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for ar... /usr/bin/ar
checking for a BSD-compatible install... /usr/bin/install -c
checking for gcc... gcc -specs=/home/danci/ESOS/esos/work/esos_build.spec -nostdinc -idirafter /usr/lib64/gcc/x86_64-suse-linux/4.5/include -idirafter /usr/lib64/gcc/x86_64-suse-linux/4.5/include-fixed -idirafter /home/danci/ESOS/esos/work/image/usr/include -idirafter /home/danci/ESOS/esos/work/kernel_headers/include
checking whether the C compiler works... no
configure: error: in `/home/danci/ESOS/esos/work/build/curl-7.29.0':
configure: error: C compiler cannot create executables
See `config.log' for more details
make[1]: *** [curl] Error 77

make[1]: Leaving directory `/home/danci/ESOS/esos'
make: *** [all] Error 2


Maybe I should try with a clean install and a different distribution...

   Danilo

Marc Smith

unread,
Dec 7, 2014, 2:58:47 PM12/7/14
to esos-...@googlegroups.com
I'd need to see the config.log file from the /home/danci/ESOS/esos/work/build/curl-7.29.0 directory.


I develop on Fedora/CentOS and the Buildbot runs on CentOS, so using a RHEL-based distribution is probably your best bet.

If I get some free time this evening, I'll fire up a SUSE instance and see what is needed.


--Marc

Danilo Godec

unread,
Dec 7, 2014, 3:02:45 PM12/7/14
to esos-...@googlegroups.com
The mentioned config.log is attached, but I guess I'll install a CentOS 6.6 (or would 7 be better?) tomorrow.

   Danilo
config.log

Marc Smith

unread,
Dec 7, 2014, 11:13:33 PM12/7/14
to esos-...@googlegroups.com
Either should be fine, but I believe the Buildbot runs on 6.x. I've started playing the SUSE EC2 instance and already noticed an issue with glibc and GNU make 4.x... I'll update when I run through all of it.

--Marc

Danilo Godec

unread,
Dec 8, 2014, 11:09:55 AM12/8/14
to esos-...@googlegroups.com
On 08. 12. 2014 05:13, Marc Smith wrote:
Either should be fine, but I believe the Buildbot runs on 6.x. I've started playing the SUSE EC2 instance and already noticed an issue with glibc and GNU make 4.x... I'll update when I run through all of it.

Today I installed a fresh CentOS 6.6 (minimum install) and build was successful - I now have an image with VIRTIO support for my 'demo' system.

Thank you very much.



     Danilo

Marc Smith

unread,
Dec 8, 2014, 12:11:26 PM12/8/14
to esos-...@googlegroups.com
Good deal. I am curious about "VIRTIO" -- is that this: http://wiki.libvirt.org/page/Virtio

Are you going to be using ESOS for a VSA? I've had a request for adding open-vm-tools to ESOS which is for VMware. If there is a market for this application, I'd consider adding those into ESOS.


Thanks,

Marc


Danilo Godec

unread,
Dec 9, 2014, 7:53:30 AM12/9/14
to esos-...@googlegroups.com
Yes, that's VIRTIO I'm talking about...


You could say we'll use ESOS as a VSA - though in this instance it's a 'demo' system (a HP SL6500 chassis with 6 independent servers), so we'll be able to showcase OpenStack, KVM, ESOS and other OpenSource technologies.


   Danilo






On 08. 12. 2014 18:11, 'Marc Smith' via esos-users wrote:

Marc Smith

unread,
Dec 9, 2014, 9:52:30 PM12/9/14
to esos-...@googlegroups.com
I've committed several build fixes for SUSE (r732) and I also updated the wiki page for build requirements on this platform. Tested on SUSE Linux Enterprise Server 12.

--Marc

Reply all
Reply to author
Forward
0 new messages