ip_tunnels: Set tunnel option flag when tunnel metadata is present
authorYi-Hung Wei <yihung.wei@gmail.com>
Wed, 11 Nov 2020 00:16:40 +0000 (16:16 -0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 24 Nov 2020 12:39:00 +0000 (13:39 +0100)
commit4ddfa76292ff2a982a5df3e826577dadb477bd65
treef7c6b3b5c8d33146447965344ccc6d6864104bda
parentec6ea95aed5abd1a60ffd8a3eab775ca4603c0cb
ip_tunnels: Set tunnel option flag when tunnel metadata is present

[ Upstream commit 9c2e14b48119b39446031d29d994044ae958d8fc ]

Currently, we may set the tunnel option flag when the size of metadata
is zero.  For example, we set TUNNEL_GENEVE_OPT in the receive function
no matter the geneve option is present or not.  As this may result in
issues on the tunnel flags consumers, this patch fixes the issue.

Related discussion:
* https://lore.kernel.org/netdev/1604448694-19351-1-git-send-email-yihung.wei@gmail.com/T/#u

Fixes: 256c87c17c53 ("net: check tunnel option type in tunnel flags")
Signed-off-by: Yi-Hung Wei <yihung.wei@gmail.com>
Link: https://lore.kernel.org/r/1605053800-74072-1-git-send-email-yihung.wei@gmail.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/geneve.c
include/net/ip_tunnels.h