[prev in list] [next in list] [prev in thread] [next in thread]
List: linux-stable-commits
Subject: patch correctly-close-old-nfsd-lockd-sockets.patch queued to -stable tree
From: <gregkh () suse ! de>
Date: 2007-09-21 22:57:37
Message-ID: 20070921225657.9C3801449FC0 () imap ! suse ! de
[Download RAW message or body]
This is a note to let you know that we have just queued up the patch titled
Subject: Correctly close old nfsd/lockd sockets.
to the 2.6.22-stable tree. Its filename is
correctly-close-old-nfsd-lockd-sockets.patch
A git repo of this tree can be found at
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary
From stable-bounces@linux.kernel.org Fri Sep 14 07:28:34 2007
From: Neil Brown <neilb@suse.de>
Date: Fri, 14 Sep 2007 10:28:08 -0400
Subject: Correctly close old nfsd/lockd sockets.
To: Linus Torvalds <torvalds@linux-foundation.org>, stable@kernel.org
Cc: Neil Brown <neilb@suse.de>, nfs@lists.sourceforge.net, \
linux-kernel@vger.kernel.org, trond.myklebust@fys.uio.no
Message-ID: <20070914142808.GD20606@fieldses.org>
Content-Disposition: inline
From: Neil Brown <neilb@suse.de>
commit 7a1fa065a0264f6b3d3003ba5635289f6583c478 in mainline.
Commit aaf68cfbf2241d24d46583423f6bff5c47e088b3 added a bias
to sk_inuse, so this test for an unused socket now fails. So no
sockets get closed because they are old (they might get closed
if the client closed them).
This bug has existed since 2.6.21-rc1.
Thanks to Wolfgang Walter for finding and reporting the bug.
Cc: Wolfgang Walter <wolfgang.walter@studentenwerk.mhn.de>
Signed-off-by: Neil Brown <neilb@suse.de>
Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
--- a/net/sunrpc/svcsock.c
+++ b/net/sunrpc/svcsock.c
@@ -1593,7 +1593,8 @@ svc_age_temp_sockets(unsigned long closure)
if (!test_and_set_bit(SK_OLD, &svsk->sk_flags))
continue;
- if (atomic_read(&svsk->sk_inuse) || test_bit(SK_BUSY, &svsk->sk_flags))
+ if (atomic_read(&svsk->sk_inuse) > 1
+ || test_bit(SK_BUSY, &svsk->sk_flags))
continue;
atomic_inc(&svsk->sk_inuse);
list_move(le, &to_be_aged);
--
1.5.3.1.42.gfe5df
_______________________________________________
stable mailing list
stable@linux.kernel.org
http://linux.kernel.org/mailman/listinfo/stable
Patches currently in stable-queue which might be from neilb@suse.de are
queue-2.6.22/rpc-fix-garbage-in-printk-in-svc_tcp_accept.patch
queue-2.6.22/correctly-close-old-nfsd-lockd-sockets.patch
-
To unsubscribe from this list: send the line "unsubscribe stable-commits" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic