| Submitter | Evgeniy Polyakov |
|---|---|
| Date | Jan. 19, 2009, 11:21 p.m. |
| Message ID | <20090119232151.GA13659@ioremap.net> |
| Download | mbox | patch |
| Permalink | /patch/19400/ |
| State | Accepted |
| Delegated to: | David Miller |
| Headers | show |
Comments
From: Evgeniy Polyakov <zbr@ioremap.net> Date: Tue, 20 Jan 2009 02:21:51 +0300 > I found the bug in bind conflict resolve path, when bundle was not > unlocked after conflict was detected, attached patch should fix it. > > If testing will reveal some new problems I will return with the fix > then. Please apply or queue for the appropriate tree. > > Signed-off-by: Evgeniy Polyakov <zbr@ioremap.net> Applied, thanks Evgeniy. If I end up rebasing the net-next tree before publishing, I'll integrate this fix into the original commit. -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Mon, Jan 19, 2009 at 03:24:32PM -0800, David Miller (davem@davemloft.net) wrote: > If I end up rebasing the net-next tree before publishing, I'll > integrate this fix into the original commit. Great, thank you!
Patch
--- ./net/ipv4/inet_connection_sock.c~ 2009-01-19 22:19:11.000000000 +0300 +++ ./net/ipv4/inet_connection_sock.c 2009-01-19 22:21:08.000000000 +0300 @@ -172,8 +172,10 @@ } else { ret = 1; if (inet_csk(sk)->icsk_af_ops->bind_conflict(sk, tb)) { - if (sk->sk_reuse && sk->sk_state != TCP_LISTEN && --attempts >= 0) + if (sk->sk_reuse && sk->sk_state != TCP_LISTEN && --attempts >= 0) { + spin_unlock(&head->lock); goto again; + } goto fail_unlock; } }
Hi. I found the bug in bind conflict resolve path, when bundle was not unlocked after conflict was detected, attached patch should fix it. If testing will reveal some new problems I will return with the fix then. Please apply or queue for the appropriate tree. Signed-off-by: Evgeniy Polyakov <zbr@ioremap.net>