From: Ben Pfaff Date: Tue, 22 Jun 2010 20:50:55 +0000 (-0700) Subject: INSTALL.Linux: Add some troubleshooting instructions for module loading. X-Git-Tag: v1.1.0pre1~249 X-Git-Url: http://git.onelab.eu/?a=commitdiff_plain;h=dd2d79ce3ed519ed5bdab2c3273d8aa10c0cb435;p=sliver-openvswitch.git INSTALL.Linux: Add some troubleshooting instructions for module loading. Suggested-by: kk yap --- diff --git a/INSTALL.Linux b/INSTALL.Linux index 5a628d8c0..bd7038c85 100644 --- a/INSTALL.Linux +++ b/INSTALL.Linux @@ -186,6 +186,41 @@ Prerequisites section, follow the procedure below to build. 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. + 7. Initialize the configuration database using ovsdb-tool, e.g.: % ovsdb-tool create /usr/local/etc/ovs-vswitchd.conf.db vswitchd/vswitch.ovsschema