[ovs-discuss] Create GRE tunnel failed, vswitch complains no kernel module

Ben Pfaff blp at nicira.com
Thu Dec 9 23:56:54 UTC 2010

On Thu, Dec 09, 2010 at 03:53:01PM -0800, frank wrote:
> Dec  9 15:24:46 xenserver-frank1 ovs-vswitchd:
> 00011|dpif_linux|ERR|/proc/devices: openvswitch major not found (is
> the module loaded?)

I suspect that the kernel module is not loaded.

INSTALL.Linux has debugging tips:

6. If you built kernel modules, you may load them with "insmod", e.g.:

      % insmod datapath/linux-2.6/openvswitch_mod.ko

   You may need to specify a full path to insmod, e.g. /sbin/insmod.
   To verify that the modules have been loaded, run "/sbin/lsmod" and
   check that openvswitch_mod is listed.

   If the "insmod" operation fails, look at the last few kernel log
   messages (e.g. with "dmesg | tail"):

      - The message "openvswitch_mod: exports duplicate symbol
        br_should_route_hook (owned by bridge)" means that the bridge
        module is loaded.  Run "/sbin/rmmod bridge" to remove it.

        If "/sbin/rmmod bridge" fails with "ERROR: Module bridge does
        not exist in /proc/modules", then the bridge is compiled into
        the kernel, rather than as a module.  Open vSwitch does not
        support this configuration (see "Build Requirements", above).

      - The message "openvswitch_mod: exports duplicate symbol
        dp_ioctl_hook (owned by ofdatapath)" means that the ofdatapath
        module from the OpenFlow reference implementation is loaded.
        Run "/sbin/rmmod ofdatapath" to remove it.  (You might have to
        delete any existing datapaths beforehand, using the "dpctl"
        program included with the OpenFlow reference implementation.
        "ovs-dpctl" will not work.)

      - Otherwise, the most likely problem is that Open vSwitch was
        built for a kernel different from the one into which you are
        trying to load it.  Run "modinfo" on openvswitch_mod.ko and on
        a module built for the running kernel, e.g.:

           % /sbin/modinfo openvswitch_mod.ko
           % /sbin/modinfo /lib/modules/`uname -r`/kernel/net/bridge/bridge.ko

        Compare the "vermagic" lines output by the two commands.  If
        they differ, then Open vSwitch was built for the wrong kernel.

      - If you decide to report a bug or ask a question related to
        module loading, please include the output from the "dmesg" and
        "modinfo" commands mentioned above.

More information about the discuss mailing list