~xnox/ubuntu-z-systems/+git/ovs:branch-1.10

Last commit made on 2014-06-23
Get this branch:
git clone -b branch-1.10 https://git.launchpad.net/~xnox/ubuntu-z-systems/+git/ovs

Branch merges

Branch information

Name:
branch-1.10
Repository:
lp:~xnox/ubuntu-z-systems/+git/ovs

Recent commits

cc54535... by Alex Wang <email address hidden>

ofproto-dpif: Configure datapath max-idle through ovs-vsctl.

This patch adds a new configuration option, "max-idle" to the
Bridge "other-config" column. This sets how long datapath flows,
for the configured bridge, are cached in the datapath before
ovs-vswitchd thread expires them.

This commit is a backport of commit 72310b04 (upcall: Configure
datapath max-idle through ovs-vsctl.).

Signed-off-by: Alex Wang <email address hidden>
Acked-by: Joe Stringer <email address hidden>

c736bbc... by Alex Wang <email address hidden>

cfm: Define old_cfm_fault as 'enum cfm_fault_reason'.

CFM fault variable type has been changed to 'enum cfm_fault_reason' for
long time. However, inside cfm_run(), the old_cfm_fault is still defined
as boolean. This commit fixes the issue.

Found by inspection.

Signed-off-by: Alex Wang <email address hidden>
Acked-by: Ben Pfaff <email address hidden>

a5c14a9... by Joe Stringer

dpif-linux: Lookup netdev to get netdev type string.

When creating tap ports in dpif-linux, the "tap" type is treated the
same as "system", and the type is discarded. When dumping datapath
port types, this would cause "tap" type to be reported as a "system"
type.

Each time we see a port of the wrong type in bridge_reconfigure(), we
remove it and add a port with the correct configuration. This would
always occur for tap ports, causing deletion and re-creation of all tap
ports each time the bridge was reconfigured.

This patch makes dpif-linux use netdev to look up port types if the
datapath reports that they are of type OVS_VPORT_TYPE_NETDEV.

Bug #1196289.

Reported-by: James Schmidt <email address hidden>
Signed-off-by: Joe Stringer <email address hidden>
Acked-by: Alex Wang <email address hidden>
Acked-by: Ben Pfaff <email address hidden>

f36519e... by Jarno Rajahalme <email address hidden>

datapath: Fix race.

ovs_vport_cmd_dump() did rcu_read_lock() only after getting the
datapath, which could have been deleted in between. Resolved by
taking rcu_read_lock() before the get_dp() call.

Signed-off-by: Jarno Rajahalme <email address hidden>

c492d1a... by Jarno Rajahalme <email address hidden>

meta-flow: Fix setting MFF_IP_FRAG.

mf_set_flow_value() was not setting 'flow->nw_frag' properly.

Signed-off-by: Jarno Rajahalme <email address hidden>

f34dcab... by Ansis Atteka <email address hidden>

ipsec: install iptables rules that set IPsec bit in skb mark

Without these two iptables rules (one for UDP encapsulated IPsec and
another for direct IPsec), ovs-vswitchd would incorrectly conclude
that GRE packet belonged to a plain GRE tunnel instead of IPsec GRE
tunnel.

Reported-by: Aryan TaheriMonfared <email address hidden>
Reported-by: Daniel Hiltgen <email address hidden>
Signed-off-by: Ansis Atteka <email address hidden>

db751c4... by Chris Wright

datapath: Fix RHEL compat for netdev_rx_handler_register

Andrei Andone reported an oops on CentOS 6.4 when adding a device to an
ovs instance. The problem is easy to reproduce and generates the
following stack trace:

kernel tried to execute NX-protected page - exploit attempt? (uid: 0)
BUG: unable to handle kernel paging request at ffff88033afa49c0
IP: [<ffff88033afa49c0>] 0xffff88033afa49c0
...
Call Trace:
 <IRQ>
 [<ffffffff814487ba>] ? __netif_receive_skb+0x60a/0x750
 [<ffffffff81055f96>] ? enqueue_task+0x66/0x80
 [<ffffffff8144aa38>] netif_receive_skb+0x58/0x60
 [<ffffffff8144ab40>] napi_skb_finish+0x50/0x70
 [<ffffffff8144d0e9>] napi_gro_receive+0x39/0x50
 [<ffffffffa025f46c>] igb_poll+0x7ec/0xc70 [igb]
 [<ffffffff810e6881>] ? cpu_quiet_msk+0xc1/0x130
...

As you can see, we jumped to data rather than code. This is caused by
a mistake in the compat code for netdev_rx_handler_register which sets
the handler to rx_handler_data rather than rx_handler. This was
introduced by commit "3e35fe3 datapath: rhel: Move RHEL OVS hook
registration to netdev_rx_handler_register() backport".

Reported-by: Andrei Andone <email address hidden>
Signed-off-by: Chris Wright <email address hidden>
Cc: Thomas Graf <email address hidden>
Cc: Pravin Shelar <email address hidden>
Acked-by: Kyle Mestery <email address hidden>
Reviewed-by: Thomas Graf <email address hidden>
Signed-off-by: Pravin B Shelar <email address hidden>

e6c40ba... by Thomas Graf

datapath: rhel: Move RHEL OVS hook registration to netdev_rx_handler_register() backport

Moves the registration of the RHEL specific OVS hook to the compat
backport of netdev_rx_handler_register(). This moves the hook
unregistration from the RCU callback to the netdev_destroy()
callback directly.

This is purely cosmetic though, the RHEL hook is only used if the
IFF_OVS_DATAPATH flag is present which was removed under RTNL
protection before the RCU callback.

Signed-off-by: Thomas Graf <email address hidden>
Signed-off-by: Jesse Gross <email address hidden>
Signed-off-by: Pravin B Shelar <email address hidden>

Bug #20448

53d80b4... by Alfredo Finelli <email address hidden>

debian: Avoid logrotate error if /var/run/openvswitch does not exist.

Signed-off-by: Alfredo Finelli <email address hidden>
Signed-off-by: Ben Pfaff <email address hidden>

9292258... by Thomas Graf

ovsdb: Do not leak error in ovsdb_server_compact()

Signed-off-by: Thomas Graf <email address hidden>
Signed-off-by: Ben Pfaff <email address hidden>