From: NeilBrown Date: Tue, 6 Mar 2007 09:42:22 +0000 (-0800) Subject: [PATCH] knfsd: fix recently introduced problem with shutting down a busy NFS server X-Git-Tag: v2.6.21-rc3~26 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=cda1fd4abd773216a888487af0170d0cc3d50454;p=pandora-kernel.git [PATCH] knfsd: fix recently introduced problem with shutting down a busy NFS server When the last thread of nfsd exits, it shuts down all related sockets. It currently uses svc_close_socket to do this, but that only is immediately effective if the socket is not SK_BUSY. If the socket is busy - i.e. if a request has arrived that has not yet been processes - svc_close_socket is not effective and the shutdown process spins. So create a new svc_force_close_socket which removes the SK_BUSY flag is set and then calls svc_close_socket. Also change some open-codes loops in svc_destroy to use list_for_each_entry_safe. Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds --- Reading git-diff-tree failed