diff -Nru openvswitch-1.4.6/debian/changelog openvswitch-1.4.6/debian/changelog --- openvswitch-1.4.6/debian/changelog 2014-02-14 18:39:16.000000000 +0000 +++ openvswitch-1.4.6/debian/changelog 2014-10-10 22:20:20.000000000 +0000 @@ -1,3 +1,10 @@ +openvswitch (1.4.6-0ubuntu1.12.04.4) precise; urgency=medium + + * Update: d/p/0010-datapath_ip_select_ident_fix.patch: + Fix stable kernel changes to ip_select_ident. (LP: #1379201) + + -- Chris J Arges Fri, 10 Oct 2014 14:31:19 -0500 + openvswitch (1.4.6-0ubuntu1.12.04.3) precise; urgency=low * d/p/0011-netdev-linux-Get-carrier-from-ioctl-instead-of-sysfs.patch: diff -Nru openvswitch-1.4.6/debian/patches/0010-datapath_ip_select_ident_fix.patch openvswitch-1.4.6/debian/patches/0010-datapath_ip_select_ident_fix.patch --- openvswitch-1.4.6/debian/patches/0010-datapath_ip_select_ident_fix.patch 2014-01-08 20:19:58.000000000 +0000 +++ openvswitch-1.4.6/debian/patches/0010-datapath_ip_select_ident_fix.patch 2014-10-10 22:01:05.000000000 +0000 @@ -1,21 +1,26 @@ -Description: handle ip_select_ident function changes after Linux commit 703133de +Description: handle ip_select_ident changes from commits 73f156a6, 703133de Author: Chris J Arges -Bug-Ubuntu: https://launchpad.net/bugs/1262692 -Forwarded: http://permalink.gmane.org/gmane.linux.network.openvswitch.general/3980 -Last-Update: 2014-01-08 +Bug-Ubuntu: https://launchpad.net/bugs/1379201 +Last-Update: 2014-10-10 ---- openvswitch-1.4.6.orig/datapath/tunnel.c -+++ openvswitch-1.4.6/datapath/tunnel.c -@@ -1295,7 +1295,16 @@ int ovs_tnl_send(struct vport *vport, st +--- a/datapath/tunnel.c ++++ b/datapath/tunnel.c +@@ -1295,7 +1295,22 @@ iph->tos = tos; iph->ttl = ttl; iph->frag_off = frag_off; + + /* -+ * linux commit 703133de changes the first parameter of -+ * ip_select_ident from iph to skb ++ * linux commits 703133de, 73f156a6 changed this function ++ * affected stable versions are: 3.13.11.7, 3.2.63 + */ -+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,2,0) ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,13,11) /* commit 73f156a6 */ ++ ip_select_ident(skb, &rt_dst(rt)); ++#elif LINUX_VERSION_CODE >= KERNEL_VERSION(3,13,0) /* commit 703133de */ ++ ip_select_ident(skb, &rt_dst(rt), NULL); ++#elif LINUX_VERSION_CODE >= KERNEL_VERSION(3,2,63) /* commit 73f156a6 */ ++ ip_select_ident(skb, &rt_dst(rt)); ++#elif LINUX_VERSION_CODE >= KERNEL_VERSION(3,2,51) /* commit 703133de */ + ip_select_ident(skb, &rt_dst(rt), NULL); +#else ip_select_ident(iph, &rt_dst(rt), NULL); @@ -23,3 +28,25 @@ skb = tnl_vport->tnl_ops->update_header(vport, mutable, &rt_dst(rt), skb); +--- a/datapath/vport-gre.c ++++ b/datapath/vport-gre.c +@@ -119,7 +119,19 @@ + * packet originally had DF set. + */ + skb->local_df = 1; ++ ++ /* ++ * commit 73f156a6 changed this function ++ */ ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,13,11) /* commit 73f156a6 */ ++ __ip_select_ident(ip_hdr(skb), 0); ++#elif LINUX_VERSION_CODE >= KERNEL_VERSION(3,13,0) ++ __ip_select_ident(ip_hdr(skb), dst, 0); ++#elif LINUX_VERSION_CODE >= KERNEL_VERSION(3,2,63) /* commit 73f156a6 */ ++ __ip_select_ident(ip_hdr(skb), 0); ++#else + __ip_select_ident(ip_hdr(skb), dst, 0); ++#endif + + return skb; + }