I have an Ubuntu 12.04 server that has two 10 Gb ethernet cards that are using the ixgbe driver. I'm installing the PF_RING DNA drivers for these cards (what that is isn't important). I want interface eth0 to use the original Linux ixgbe driver and I want interface eth1 to use the new PF_RING ixgbe driver.

The first issue is that both drivers have the same name. I need to load both of them with insmod ixgbe.ko, but I can't since they have the same name. Can I load one of them under a different name, like ixgbe-dna? I can recompile the kernel modules if that's the only option.

Once I have two drivers ixgbe and ixgbe-dna loaded, how can I specify that eth0 will use ixgbe and eth1 will use ixgbe-dna?


Loade driver with different name: modprobe [modulename] -o [newname]

Replace the driver of the networkinterface: get the device ID e.g. lspci -nn.

Unbind the driver: echo -n "[THE_ID]" > /sys/bus/pci/drivers/[OLD_DRIVER]/unbind

And rebind it to the driver you wish: echo -n "[THE_ID]"> /sys/bus/pci/drivers/[NEW_DRIVER]/bind

| improve this answer | |
  • 1
    I don't think my version of modprobe supports the -o flag. When I run modprobe --version I get module-init-tools version 3.16. I'll try building the latest version from source and see if it works. – gsingh2011 Feb 5 '14 at 19:07
  • Even the version in the new Ubuntu package kmod doesn't have the -o flag. On which version of modprobe does that work for you? – gsingh2011 Feb 5 '14 at 19:17
  • Wrote it down some time ago... The feature got disabled 2010 :-/ – AlphaBeta Feb 5 '14 at 19:34

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.