ovs: Turn vports with dependencies into separate modules
authorThomas Graf <tgraf@suug.ch>
Wed, 22 Oct 2014 15:29:06 +0000 (17:29 +0200)
committerDavid S. Miller <davem@davemloft.net>
Tue, 28 Oct 2014 18:43:18 +0000 (14:43 -0400)
commit62b9c8d0372d11a5e048c6b56997374901e0445b
treee75c8fdf723466e9aa98997b6555fb5baa9c55d7
parentcf7b2003866ca5afc91dcddf9d91b627101f9654
ovs: Turn vports with dependencies into separate modules

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@suug.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/openvswitch/Kconfig
net/openvswitch/Makefile
net/openvswitch/datapath.c
net/openvswitch/vport-geneve.c
net/openvswitch/vport-gre.c
net/openvswitch/vport-internal_dev.c
net/openvswitch/vport-netdev.c
net/openvswitch/vport-netdev.h
net/openvswitch/vport-vxlan.c
net/openvswitch/vport.c
net/openvswitch/vport.h