[ovs-git] [openvswitch/ovs] 5a3879: datapath: Turn vports with dependencies into separ...

GitHub noreply at github.com
Sat Apr 4 06:25:44 UTC 2015


  Branch: refs/heads/master
  Home:   https://github.com/openvswitch/ovs
  Commit: 5a38795f5e6623b39004b53c7fede08399a09d79
      https://github.com/openvswitch/ovs/commit/5a38795f5e6623b39004b53c7fede08399a09d79
  Author: Thomas Graf <tgraf at noironetworks.com>
  Date:   2015-04-04 (Sat, 04 Apr 2015)

  Changed paths:
    M datapath/Modules.mk
    M datapath/datapath.c
    M datapath/linux/Kbuild.in
    M datapath/linux/compat/flow_dissector.c
    M datapath/linux/compat/geneve.c
    M datapath/linux/compat/gre.c
    M datapath/linux/compat/ip_tunnels_core.c
    M datapath/linux/compat/udp_tunnel.c
    M datapath/linux/compat/vxlan.c
    M datapath/vport-geneve.c
    M datapath/vport-gre.c
    M datapath/vport-internal_dev.c
    M datapath/vport-lisp.c
    M datapath/vport-netdev.c
    M datapath/vport-netdev.h
    M datapath/vport-vxlan.c
    M datapath/vport.c
    M datapath/vport.h

  Log Message:
  -----------
  datapath: Turn vports with dependencies into separate modules

Upstream commit:
    The internal and netdev vport remain part of openvswitch.ko. Encap
    vports including vxlan, gre, and geneve can be built as separate
    modules and are loaded on demand. Modules can be unloaded after use.
    Datapath ports keep a reference to the vport module during their
    lifetime.

    Allows to remove the error prone maintenance of the global list
    vport_ops_list.

    Signed-off-by: Thomas Graf <tgraf at suug.ch>
    Signed-off-by: David S. Miller <davem at davemloft.net>

Also folds in the follow-up commits 9ba559d9ca3 to turned the non-GPL
symbol exports to GPL exports, and fa2d8ff4e35 which fixes a module
reference release bug.

Exports various backwards compat functions linked into the main
openvswitch module as GPL symbols to ensure vport modules can use them.

Some fiddling with the Makefile was needed to work around the fact
that Makefile variables can't contain '-' characters needed to define
'vport-xxx' module sources. Also, Kbuild complains heavily if a
$(module)-y = $(module).o is defined which is actually backed with a .c
file of the same name. Therefore, a new $(build_multi_modules) variable
is defined which lists all module which consist of more than one source
file.

Upstream: 62b9c8d0372 ("ovs: Turn vports with dependencies into separate modules")
Upstream: 9ba559d9ca3 ("openvswitch: Export symbols as GPL symbols.")
Upstream: fa2d8ff4e35 ("openvswitch: Return vport module ref before destruction")
Signed-off-by: Thomas Graf <tgraf at noironetworks.com>
Acked-by: Pravin B Shelar <pshelar at nicira.com>




More information about the git mailing list