ofp-util: Work on decoding OF1.1 flow_mods.
[openvswitch] / INSTALL.Linux
index 6442fcc9bb0ebf2d526556245f62c7f574ba102b..78152b6940f7a6a5b04847d014b38a7c6352d121 100644 (file)
@@ -46,9 +46,9 @@ INSTALL.userspace for more information.
       bridge") before starting the datapath.
 
       For optional support of ingress policing, you must enable kernel
-      configuration options NET_CLS_ACT, NET_CLS_U32, NET_SCH_INGRESS,
-      and NET_ACT_POLICE, either built-in or as modules.
-      (NET_CLS_POLICE is obsolete and not needed.)
+      configuration options NET_CLS_BASIC, NET_SCH_INGRESS, and
+      NET_ACT_POLICE, either built-in or as modules.  (NET_CLS_POLICE is
+      obsolete and not needed.)
 
       If GRE tunneling is being used it is recommended that the kernel
       be compiled with IPv6 support (CONFIG_IPV6).  This allows for
@@ -100,6 +100,14 @@ you have the following:
 
     - Python 2.x, for x >= 4.
 
+If you are going to extensively modify Open vSwitch, please consider
+installing the following to obtain better warnings:
+
+    - "sparse" version 0.4.4 or later
+      (http://www.kernel.org/pub/software/devel/sparse/dist/).
+
+    - GNU make.
+
 Installation Requirements
 -------------------------
 
@@ -117,15 +125,10 @@ following software:
       iproute2 (part of all major distributions and available at
       http://www.linux-foundation.org/en/Net:Iproute2).
 
-    - For debugging purposes, Open vSwitch expects that "tcpdump" is
-      installed as /usr/sbin/tcpdump.  If tcpdump is not installed, or
-      if it is installed in a different location, then some Open
-      vSwitch log messages will not be as detailed.
-
 You should ensure that /dev/urandom exists.  To support TAP devices,
 you must also ensure that /dev/net/tun exists.
 
-To run the ovsdmonitor tool, the machine must also have the following
+To run the ovsdbmonitor tool, the machine must also have the following
 software:
 
     - Python 2.x, for x >= 4.
@@ -171,7 +174,7 @@ Prerequisites section, follow the procedure below to build.
 
    To build the Linux kernel module, so that you can run the
    kernel-based switch, pass the location of the kernel build
-   directory on --with-l26.  For example, to build for a running
+   directory on --with-linux.  For example, to build for a running
    instance of Linux:
 
       % ./configure --with-linux=/lib/modules/`uname -r`/build
@@ -192,6 +195,9 @@ Prerequisites section, follow the procedure below to build.
 
       % make
 
+   For improved warnings if you installed "sparse" (see
+   "Prerequisites"), add C=1 to the "make" command line.
+
 4. Become root by running "su" or another program.
 
 5. Run "make install" to install the executables and manpages into the
@@ -199,16 +205,16 @@ Prerequisites section, follow the procedure below to build.
 
 6. If you built kernel modules, you may load them with "insmod", e.g.:
 
-      % insmod datapath/linux/openvswitch_mod.ko
+      % insmod datapath/linux/openvswitch.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.
+   check that openvswitch 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
+      - The message "openvswitch: exports duplicate symbol
         br_should_route_hook (owned by bridge)" means that the bridge
         module is loaded.  Run "/sbin/rmmod bridge" to remove it.
 
@@ -217,7 +223,7 @@ Prerequisites section, follow the procedure below to build.
         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
+      - The message "openvswitch: 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
@@ -227,10 +233,10 @@ Prerequisites section, follow the procedure below to build.
 
       - 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
+        trying to load it.  Run "modinfo" on openvswitch.ko and on
         a module built for the running kernel, e.g.:
 
-           % /sbin/modinfo openvswitch_mod.ko
+           % /sbin/modinfo openvswitch.ko
            % /sbin/modinfo /lib/modules/`uname -r`/kernel/net/bridge/bridge.ko
 
         Compare the "vermagic" lines output by the two commands.  If
@@ -240,7 +246,7 @@ Prerequisites section, follow the procedure below to build.
         module loading, please include the output from the "dmesg" and
         "modinfo" commands mentioned above.
 
-   There is an optional module parameter to openvswitch_mod.ko called
+   There is an optional module parameter to openvswitch.ko called
    vlan_tso that enables TCP segmentation offload over VLANs on NICs
    that support it. Many drivers do not expose support for TSO on VLANs
    in a way that Open vSwitch can use but there is no way to detect
@@ -287,8 +293,7 @@ ovsdb-tool (but running it at any time is harmless):
 Then start the main Open vSwitch daemon, telling it to connect to the
 same Unix domain socket:
 
-      % ovs-vswitchd unix:/usr/local/var/run/openvswitch/db.sock \
-            --pidfile --detach 
+      % ovs-vswitchd --pidfile --detach
 
 Now you may use ovs-vsctl to set up bridges and other Open vSwitch
 features.  For example, to create a bridge named br0 and add ports
@@ -308,7 +313,7 @@ also upgrade the database schema:
 
 1. Stop the Open vSwitch daemons, e.g.:
 
-      % kill `cd /usr/local/var/run && cat ovsdb-server.pid ovs-vswitchd.pid`
+      % kill `cd /usr/local/var/run/openvswitch && cat ovsdb-server.pid ovs-vswitchd.pid`
 
 2. Install the new Open vSwitch release.