<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/net/openvswitch/flow.h, branch v4.0</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/
</subtitle>
<id>https://git.shady.money/linux/atom?h=v4.0</id>
<link rel='self' href='https://git.shady.money/linux/atom?h=v4.0'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/'/>
<updated>2015-01-26T23:45:50Z</updated>
<entry>
<title>openvswitch: Add support for unique flow IDs.</title>
<updated>2015-01-26T23:45:50Z</updated>
<author>
<name>Joe Stringer</name>
<email>joestringer@nicira.com</email>
</author>
<published>2015-01-22T00:42:52Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=74ed7ab9264c54471c7f057409d352052820d750'/>
<id>urn:sha1:74ed7ab9264c54471c7f057409d352052820d750</id>
<content type='text'>
Previously, flows were manipulated by userspace specifying a full,
unmasked flow key. This adds significant burden onto flow
serialization/deserialization, particularly when dumping flows.

This patch adds an alternative way to refer to flows using a
variable-length "unique flow identifier" (UFID). At flow setup time,
userspace may specify a UFID for a flow, which is stored with the flow
and inserted into a separate table for lookup, in addition to the
standard flow table. Flows created using a UFID must be fetched or
deleted using the UFID.

All flow dump operations may now be made more terse with OVS_UFID_F_*
flags. For example, the OVS_UFID_F_OMIT_KEY flag allows responses to
omit the flow key from a datapath operation if the flow has a
corresponding UFID. This significantly reduces the time spent assembling
and transacting netlink messages. With all OVS_UFID_F_OMIT_* flags
enabled, the datapath only returns the UFID and statistics for each flow
during flow dump, increasing ovs-vswitchd revalidator performance by 40%
or more.

Signed-off-by: Joe Stringer &lt;joestringer@nicira.com&gt;
Acked-by: Pravin B Shelar &lt;pshelar@nicira.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>openvswitch: Rename GENEVE_TUN_OPTS() to TUN_METADATA_OPTS()</title>
<updated>2015-01-15T06:11:41Z</updated>
<author>
<name>Thomas Graf</name>
<email>tgraf@suug.ch</email>
</author>
<published>2015-01-15T02:53:57Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=d91641d9b5047b0a0a4d223a0b87306e6dff8c02'/>
<id>urn:sha1:d91641d9b5047b0a0a4d223a0b87306e6dff8c02</id>
<content type='text'>
Also factors out Geneve validation code into a new separate function
validate_and_copy_geneve_opts().

A subsequent patch will introduce VXLAN options. Rename the existing
GENEVE_TUN_OPTS() to reflect its extended purpose of carrying generic
tunnel metadata options.

Signed-off-by: Thomas Graf &lt;tgraf@suug.ch&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>openvswitch: Add support for OVS_FLOW_ATTR_PROBE.</title>
<updated>2014-11-10T02:58:44Z</updated>
<author>
<name>Jarno Rajahalme</name>
<email>jrajahalme@nicira.com</email>
</author>
<published>2014-11-06T15:03:05Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=05da5898a96c05e32aa9850c9cd89eef29471b13'/>
<id>urn:sha1:05da5898a96c05e32aa9850c9cd89eef29471b13</id>
<content type='text'>
This new flag is useful for suppressing error logging while probing
for datapath features using flow commands.  For backwards
compatibility reasons the commands are executed normally, but error
logging is suppressed.

Signed-off-by: Jarno Rajahalme &lt;jrajahalme@nicira.com&gt;
Signed-off-by: Pravin B Shelar &lt;pshelar@nicira.com&gt;
</content>
</entry>
<entry>
<title>openvswitch: Constify various function arguments</title>
<updated>2014-11-10T02:58:44Z</updated>
<author>
<name>Thomas Graf</name>
<email>tgraf@noironetworks.com</email>
</author>
<published>2014-11-06T14:58:52Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=12eb18f7115884b0c1513dda31b0051121116b3a'/>
<id>urn:sha1:12eb18f7115884b0c1513dda31b0051121116b3a</id>
<content type='text'>
Help produce better optimized code.

Signed-off-by: Thomas Graf &lt;tgraf@noironetworks.com&gt;
Signed-off-by: Pravin B Shelar &lt;pshelar@nicira.com&gt;
</content>
</entry>
<entry>
<title>openvswitch: Extend packet attribute for egress tunnel info</title>
<updated>2014-11-10T02:58:44Z</updated>
<author>
<name>Wenyu Zhang</name>
<email>wenyuz@vmware.com</email>
</author>
<published>2014-11-06T14:51:24Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=8f0aad6f35f7e8b3118b7b8a65e8e76b135cc4cb'/>
<id>urn:sha1:8f0aad6f35f7e8b3118b7b8a65e8e76b135cc4cb</id>
<content type='text'>
OVS vswitch has extended IPFIX exporter to export tunnel headers
to improve network visibility.
To export this information userspace needs to know egress tunnel
for given packet. By extending packet attributes datapath can
export egress tunnel info for given packet. So that userspace
can ask for egress tunnel info in userspace action. This
information is used to build IPFIX data for given flow.

Signed-off-by: Wenyu Zhang &lt;wenyuz@vmware.com&gt;
Acked-by: Romain Lenglet &lt;rlenglet@vmware.com&gt;
Acked-by: Ben Pfaff &lt;blp@nicira.com&gt;
Signed-off-by: Pravin B Shelar &lt;pshelar@nicira.com&gt;
</content>
</entry>
<entry>
<title>openvswitch: Add basic MPLS support to kernel</title>
<updated>2014-11-06T07:52:33Z</updated>
<author>
<name>Simon Horman</name>
<email>horms@verge.net.au</email>
</author>
<published>2014-10-06T12:05:13Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=25cd9ba0abc0749e5cb78e6493c6f6b3311ec6c5'/>
<id>urn:sha1:25cd9ba0abc0749e5cb78e6493c6f6b3311ec6c5</id>
<content type='text'>
Allow datapath to recognize and extract MPLS labels into flow keys
and execute actions which push, pop, and set labels on packets.

Based heavily on work by Leo Alterman, Ravi K, Isaku Yamahata and Joe Stringer.

Cc: Ravi K &lt;rkerur@gmail.com&gt;
Cc: Leo Alterman &lt;lalterman@nicira.com&gt;
Cc: Isaku Yamahata &lt;yamahata@valinux.co.jp&gt;
Cc: Joe Stringer &lt;joe@wand.net.nz&gt;
Signed-off-by: Simon Horman &lt;horms@verge.net.au&gt;
Signed-off-by: Jesse Gross &lt;jesse@nicira.com&gt;
Signed-off-by: Pravin B Shelar &lt;pshelar@nicira.com&gt;
</content>
</entry>
<entry>
<title>openvswitch: Add support for Geneve tunneling.</title>
<updated>2014-10-06T04:32:21Z</updated>
<author>
<name>Jesse Gross</name>
<email>jesse@nicira.com</email>
</author>
<published>2014-10-03T22:35:33Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=f5796684069e0c71c65bce6a6d4766114aec1396'/>
<id>urn:sha1:f5796684069e0c71c65bce6a6d4766114aec1396</id>
<content type='text'>
The Openvswitch implementation is completely agnostic to the options
that are in use and can handle newly defined options without
further work. It does this by simply matching on a byte array
of options and allowing userspace to setup flows on this array.

Signed-off-by: Jesse Gross &lt;jesse@nicira.com&gt;
Singed-off-by: Ansis Atteka &lt;aatteka@nicira.com&gt;
Signed-off-by: Andy Zhou &lt;azhou@nicira.com&gt;
Acked-by: Thomas Graf &lt;tgraf@noironetworks.com&gt;
Acked-by: Pravin B Shelar &lt;pshelar@nicira.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>openvswitch: Wrap struct ovs_key_ipv4_tunnel in a new structure.</title>
<updated>2014-10-06T04:32:20Z</updated>
<author>
<name>Jesse Gross</name>
<email>jesse@nicira.com</email>
</author>
<published>2014-10-03T22:35:31Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=f0b128c1e2cc33ad104daf0f51a51e34f7763c5f'/>
<id>urn:sha1:f0b128c1e2cc33ad104daf0f51a51e34f7763c5f</id>
<content type='text'>
Currently, the flow information that is matched for tunnels and
the tunnel data passed around with packets is the same. However,
as additional information is added this is not necessarily desirable,
as in the case of pointers.

This adds a new structure for tunnel metadata which currently contains
only the existing struct. This change is purely internal to the kernel
since the current OVS_KEY_ATTR_IPV4_TUNNEL is simply a compressed version
of OVS_KEY_ATTR_TUNNEL that is translated at flow setup.

Signed-off-by: Jesse Gross &lt;jesse@nicira.com&gt;
Signed-off-by: Andy Zhou &lt;azhou@nicira.com&gt;
Acked-by: Pravin B Shelar &lt;pshelar@nicira.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>openvswitch: Add recirc and hash action.</title>
<updated>2014-09-16T06:28:14Z</updated>
<author>
<name>Andy Zhou</name>
<email>azhou@nicira.com</email>
</author>
<published>2014-09-16T02:37:25Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=971427f353f3c42c8dcef62e7124440df68eb809'/>
<id>urn:sha1:971427f353f3c42c8dcef62e7124440df68eb809</id>
<content type='text'>
Recirc action allows a packet to reenter openvswitch processing.
currently openvswitch lookup flow for packet received and execute
set of actions on that packet, with help of recirc action we can
process/modify the packet and recirculate it back in openvswitch
for another pass.

OVS hash action calculates 5-tupple hash and set hash in flow-key
hash. This can be used along with recirculation for distributing
packets among different ports for bond devices.
For example:
OVS bonding can use following actions:
Match on: bond flow; Action: hash, recirc(id)
Match on: recirc-id == id and hash lower bits == a;
          Action: output port_bond_a

Signed-off-by: Andy Zhou &lt;azhou@nicira.com&gt;
Acked-by: Jesse Gross &lt;jesse@nicira.com&gt;
Signed-off-by: Pravin B Shelar &lt;pshelar@nicira.com&gt;
</content>
</entry>
<entry>
<title>openvswitch: Use tun_key only for egress tunnel path.</title>
<updated>2014-09-16T06:28:13Z</updated>
<author>
<name>Pravin B Shelar</name>
<email>pshelar@nicira.com</email>
</author>
<published>2014-09-16T02:28:44Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=8c8b1b83fcdd0f05e1f66ed6f8a2e831d5d374a2'/>
<id>urn:sha1:8c8b1b83fcdd0f05e1f66ed6f8a2e831d5d374a2</id>
<content type='text'>
Currently tun_key is used for passing tunnel information
on ingress and egress path, this cause confusion.  Following
patch removes its use on ingress path make it egress only parameter.

Signed-off-by: Pravin B Shelar &lt;pshelar@nicira.com&gt;
Acked-by: Andy Zhou &lt;azhou@nicira.com&gt;
</content>
</entry>
</feed>
