On Thu, Sep 10, 2026 at 10:13 AM Ido Schimmel [off-list ref] wrote:
On Wed, Sep 09, 2026 at 11:43:50PM +0000, Kuniyuki Iwashima wrote:
quoted
@@ -920,6 +927,11 @@ int ip_tunnel_ctl(struct net_device *dev, struct ip_tunnel_parm_kern *p,
mutex_lock(&itn->tunnels_lock);
+ if (!itn->fb_tunnel_dev) {
+ err = -EBUSY;
+ goto done;
+ }
This is a problem in network namespaces where fallback tunnels are not
created and the pointer is set to NULL.
Ah, I should have used check_net().
Will fix it in v3.
Thanks !
---
pw-bot: cr
Before:
# sysctl -wq net.core.fb_tunnels_only_for_init_net=1
# ip netns add bla
# ip -n bla link add name gre1 up type gre local 192.0.2.1 remote 198.51.100.1
# ip -n bla tunnel show gre1
gre1: gre/ip remote 198.51.100.1 local 192.0.2.1 ttl inherit
After:
# sysctl -wq net.core.fb_tunnels_only_for_init_net=1
# ip netns add bla
# ip -n bla link add name gre1 up type gre local 192.0.2.1 remote 198.51.100.1
# ip -n bla tunnel show gre1
get tunnel "gre1" failed: Device or resource busy