xref: /linux/net/openvswitch/Kconfig (revision 99b7248e2ad57ca93ada10c6598affb267ffc99a)
1ccb1352eSJesse Gross#
2ccb1352eSJesse Gross# Open vSwitch
3ccb1352eSJesse Gross#
4ccb1352eSJesse Gross
5ccb1352eSJesse Grossconfig OPENVSWITCH
6ccb1352eSJesse Gross	tristate "Open vSwitch"
78cd4313aSPravin B Shelar	depends on INET
838c089d1SJoe Stringer	depends on !NF_CONNTRACK || \
905752523SJarno Rajahalme		   (NF_CONNTRACK && ((!NF_DEFRAG_IPV6 || NF_DEFRAG_IPV6) && \
10*99b7248eSArnd Bergmann				     (!NF_NAT || NF_NAT) && \
11*99b7248eSArnd Bergmann				     (!NF_NAT_IPV4 || NF_NAT_IPV4) && \
12*99b7248eSArnd Bergmann				     (!NF_NAT_IPV6 || NF_NAT_IPV6)))
13a175a723SJoe Stringer	select LIBCRC32C
147d5f41f2SEric W. Biederman	select MPLS
158cd4313aSPravin B Shelar	select NET_MPLS_GSO
16d71785ffSPaolo Abeni	select DST_CACHE
17ccb1352eSJesse Gross	---help---
18ccb1352eSJesse Gross	  Open vSwitch is a multilayer Ethernet switch targeted at virtualized
19ccb1352eSJesse Gross	  environments.  In addition to supporting a variety of features
20ccb1352eSJesse Gross	  expected in a traditional hardware switch, it enables fine-grained
21ccb1352eSJesse Gross	  programmatic extension and flow-based control of the network.  This
22ccb1352eSJesse Gross	  control is useful in a wide variety of applications but is
23ccb1352eSJesse Gross	  particularly important in multi-server virtualization deployments,
24ccb1352eSJesse Gross	  which are often characterized by highly dynamic endpoints and the
25ccb1352eSJesse Gross	  need to maintain logical abstractions for multiple tenants.
26ccb1352eSJesse Gross
27ccb1352eSJesse Gross	  The Open vSwitch datapath provides an in-kernel fast path for packet
28ccb1352eSJesse Gross	  forwarding.  It is complemented by a userspace daemon, ovs-vswitchd,
29ccb1352eSJesse Gross	  which is able to accept configuration from a variety of sources and
30ccb1352eSJesse Gross	  translate it into packet processing rules.
31ccb1352eSJesse Gross
32ccb1352eSJesse Gross	  See http://openvswitch.org for more information and userspace
33ccb1352eSJesse Gross	  utilities.
34ccb1352eSJesse Gross
35ccb1352eSJesse Gross	  To compile this code as a module, choose M here: the module will be
36ccb1352eSJesse Gross	  called openvswitch.
37ccb1352eSJesse Gross
38ccb1352eSJesse Gross	  If unsure, say N.
39fb825a55SPravin B Shelar
40fb825a55SPravin B Shelarconfig OPENVSWITCH_GRE
4162b9c8d0SThomas Graf	tristate "Open vSwitch GRE tunneling support"
42fb825a55SPravin B Shelar	depends on OPENVSWITCH
43b2acd1dcSPravin B Shelar	depends on NET_IPGRE
4462b9c8d0SThomas Graf	default OPENVSWITCH
45fb825a55SPravin B Shelar	---help---
46fb825a55SPravin B Shelar	  If you say Y here, then the Open vSwitch will be able create GRE
47fb825a55SPravin B Shelar	  vport.
48fb825a55SPravin B Shelar
49fb825a55SPravin B Shelar	  Say N to exclude this support and reduce the binary size.
50fb825a55SPravin B Shelar
51fb825a55SPravin B Shelar	  If unsure, say Y.
5258264848SPravin B Shelar
53dcc38c03SThomas Grafconfig OPENVSWITCH_VXLAN
54dcc38c03SThomas Graf	tristate "Open vSwitch VXLAN tunneling support"
55dcc38c03SThomas Graf	depends on OPENVSWITCH
56dcc38c03SThomas Graf	depends on VXLAN
57dcc38c03SThomas Graf	default OPENVSWITCH
58dcc38c03SThomas Graf	---help---
59dcc38c03SThomas Graf	  If you say Y here, then the Open vSwitch will be able create vxlan vport.
60dcc38c03SThomas Graf
61dcc38c03SThomas Graf	  Say N to exclude this support and reduce the binary size.
62dcc38c03SThomas Graf
63dcc38c03SThomas Graf	  If unsure, say Y.
64dcc38c03SThomas Graf
65f5796684SJesse Grossconfig OPENVSWITCH_GENEVE
6662b9c8d0SThomas Graf	tristate "Open vSwitch Geneve tunneling support"
67f5796684SJesse Gross	depends on OPENVSWITCH
686b001e68SPravin B Shelar	depends on GENEVE
6962b9c8d0SThomas Graf	default OPENVSWITCH
70f5796684SJesse Gross	---help---
71f5796684SJesse Gross	  If you say Y here, then the Open vSwitch will be able create geneve vport.
72f5796684SJesse Gross
73f5796684SJesse Gross	  Say N to exclude this support and reduce the binary size.
74