Message ID | 5664A102.2030602@profihost.ag (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Sun, Dec 06, 2015 at 09:56:34PM +0100, Stefan Priebe wrote: > Hi Herbert, > > i think i found the issue in 4.1 with netlink. Somebody made a > mistake while backporting or cherry-picking your patch "netlink: Fix > autobind race condition that leads to zero port ID" to 4.1. > > It misses a goto in 4.1. > > This goto is missing in 4.1: > > diff --git a/net/netlink/af_netlink.c b/net/netlink/af_netlink.c > index 4017e12..f15c001 100644 > --- a/net/netlink/af_netlink.c > +++ b/net/netlink/af_netlink.c > @@ -1132,7 +1132,6 @@ static int netlink_insert(struct sock *sk, u32 portid) > if (err == -EEXIST) > err = -EADDRINUSE; > sock_put(sk); > - goto err; > } > > /* We need to ensure that the socket is hashed and visible. */ > > Can you please confirm, that this is not correct and might cause > those issues. Well spotted! Yes this would be a fatal error and can cause the problems you guys are seeing. Thanks,
Hi Herbert, Am 07.12.2015 um 02:20 schrieb Herbert Xu: > On Sun, Dec 06, 2015 at 09:56:34PM +0100, Stefan Priebe wrote: >> Hi Herbert, >> >> i think i found the issue in 4.1 with netlink. Somebody made a >> mistake while backporting or cherry-picking your patch "netlink: Fix >> autobind race condition that leads to zero port ID" to 4.1. >> >> It misses a goto in 4.1. >> >> This goto is missing in 4.1: >> >> diff --git a/net/netlink/af_netlink.c b/net/netlink/af_netlink.c >> index 4017e12..f15c001 100644 >> --- a/net/netlink/af_netlink.c >> +++ b/net/netlink/af_netlink.c >> @@ -1132,7 +1132,6 @@ static int netlink_insert(struct sock *sk, u32 portid) >> if (err == -EEXIST) >> err = -EADDRINUSE; >> sock_put(sk); >> - goto err; >> } >> >> /* We need to ensure that the socket is hashed and visible. */ >> >> Can you please confirm, that this is not correct and might cause >> those issues. > > Well spotted! Yes this would be a fatal error and can cause the > problems you guys are seeing. Thanks, good. Can you help me to get this fix upstream into the stable lines? Stefan > > Thanks, > -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Hello Stefan, Am 06.12.2015 um 21:56 schrieb Stefan Priebe: > i think i found the issue in 4.1 with netlink. Somebody made a mistake > while backporting or cherry-picking your patch "netlink: Fix autobind > race condition that leads to zero port ID" to 4.1. > > It misses a goto in 4.1. > > This goto is missing in 4.1: > > diff --git a/net/netlink/af_netlink.c b/net/netlink/af_netlink.c > index 4017e12..f15c001 100644 > --- a/net/netlink/af_netlink.c > +++ b/net/netlink/af_netlink.c > @@ -1132,7 +1132,6 @@ static int netlink_insert(struct sock *sk, u32 > portid) > if (err == -EEXIST) > err = -EADDRINUSE; > sock_put(sk); > - goto err; > } > > /* We need to ensure that the socket is hashed and visible. */ > > Can you please confirm, that this is not correct and might cause those > issues. I just tested that patch and it seems to fix our hang. Thank you for your good work. Philipp PS: I guess I can skip testing your other test request as this simple patch is part of your other hiuq4bsW patch. If I should still test it, just send a note. -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/net/netlink/af_netlink.c b/net/netlink/af_netlink.c index 4017e12..f15c001 100644 --- a/net/netlink/af_netlink.c +++ b/net/netlink/af_netlink.c @@ -1132,7 +1132,6 @@ static int netlink_insert(struct sock *sk, u32 portid) if (err == -EEXIST) err = -EADDRINUSE; sock_put(sk); - goto err; } /* We need to ensure that the socket is hashed and visible. */