* Patch "vxlan: fix missing options_len update on RX with collect metadata" has been added to the 4.4-stable tree
@ 2016-04-16 17:07 gregkh
0 siblings, 0 replies; only message in thread
From: gregkh @ 2016-04-16 17:07 UTC (permalink / raw)
To: daniel, davem, gregkh, tgraf; +Cc: stable, stable-commits
This is a note to let you know that I've just added the patch titled
vxlan: fix missing options_len update on RX with collect metadata
to the 4.4-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary
The filename of the patch is:
vxlan-fix-missing-options_len-update-on-rx-with-collect-metadata.patch
and it can be found in the queue-4.4 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@vger.kernel.org> know about it.
>From foo@baz Sat Apr 16 10:02:53 PDT 2016
From: Daniel Borkmann <daniel@iogearbox.net>
Date: Wed, 2 Mar 2016 02:32:08 +0100
Subject: vxlan: fix missing options_len update on RX with collect metadata
From: Daniel Borkmann <daniel@iogearbox.net>
[ Upstream commit 4024fcf70556311521e7b6cf79fa50e16f31013a ]
When signalling to metadata consumers that the metadata_dst entry
carries additional GBP extension data for vxlan (TUNNEL_VXLAN_OPT),
the dst's vxlan_metadata information is populated, but options_len
is left to zero. F.e. in ovs, ovs_flow_key_extract() checks for
options_len before extracting the data through ip_tunnel_info_opts_get().
Geneve uses ip_tunnel_info_opts_set() helper in receive path, which
sets options_len internally, vxlan however uses ip_tunnel_info_opts(),
so when filling vxlan_metadata, we do need to update options_len.
Fixes: 4c22279848c5 ("ip-tunnel: Use API to access tunnel metadata options.")
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Acked-by: Thomas Graf <tgraf@suug.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
drivers/net/vxlan.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
--- a/drivers/net/vxlan.c
+++ b/drivers/net/vxlan.c
@@ -1306,8 +1306,10 @@ static int vxlan_udp_encap_recv(struct s
gbp = (struct vxlanhdr_gbp *)vxh;
md->gbp = ntohs(gbp->policy_id);
- if (tun_dst)
+ if (tun_dst) {
tun_dst->u.tun_info.key.tun_flags |= TUNNEL_VXLAN_OPT;
+ tun_dst->u.tun_info.options_len = sizeof(*md);
+ }
if (gbp->dont_learn)
md->gbp |= VXLAN_GBP_DONT_LEARN;
Patches currently in stable-queue which might be from daniel@iogearbox.net are
queue-4.4/tun-bpf-fix-suspicious-rcu-usage-in-tun_-attach-detach-_filter.patch
queue-4.4/vxlan-fix-missing-options_len-update-on-rx-with-collect-metadata.patch
queue-4.4/mld-igmp-fix-reserved-tailroom-calculation.patch
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2016-04-16 17:11 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-04-16 17:07 Patch "vxlan: fix missing options_len update on RX with collect metadata" has been added to the 4.4-stable tree gregkh
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).