Linux NFS development
 help / color / mirror / Atom feed
* [PATCH 0/3] [RFC] knfsd: convert to kthread API and remove signaling for shutdown
@ 2008-05-18  2:35 Jeff Layton
  2008-05-18  2:35 ` [PATCH 1/3] [RFC] knfsd: convert knfsd to kthread API Jeff Layton
  2008-05-19  6:07 ` [PATCH 0/3] [RFC] knfsd: convert to kthread API and remove signaling for shutdown Neil Brown
  0 siblings, 2 replies; 26+ messages in thread
From: Jeff Layton @ 2008-05-18  2:35 UTC (permalink / raw)
  To: linux-nfs, nfsv4

knfsd is the last NFS-related kernel thread that does not use the
kthread API. This patchset represents a first pass at converting it. It
seems to work, but changes the shutdown interface. knfsd currently
allows signals to tell it when to come down.

My main question is...how tied to this shutdown method are we? We can
also take down nfsd by having people run:

     # rpc.nfsd 0

...which basically does:

     # echo 0 > /proc/fs/nfsd/threads

...so we don't think we *have* to use signals here. Is signaling
something we can reasonably eliminate? In addition to making the code a
bit simpler and cleaner, I think it will also eliminate this race:

    http://lkml.org/lkml/2007/8/2/462

If this isn't feasible, then I can add the signaling back in, but am not
sure whether we can eliminate the race without adding more locking.

If we can do this, we may need to provide an alternate way to specify
that we want to take down all nfsd's but not flush the export table.
Currently that's done with a SIGHUP, but the value of this facility is
not clear to me since the kernel can just do another upcall.

Comments and suggestions appreciated...

Signed-off-by: Jeff Layton <jlayton@redhat.com>


^ permalink raw reply	[flat|nested] 26+ messages in thread

end of thread, other threads:[~2008-06-03 10:51 UTC | newest]

Thread overview: 26+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-05-18  2:35 [PATCH 0/3] [RFC] knfsd: convert to kthread API and remove signaling for shutdown Jeff Layton
2008-05-18  2:35 ` [PATCH 1/3] [RFC] knfsd: convert knfsd to kthread API Jeff Layton
2008-05-18  2:35   ` [PATCH 2/3] [RFC] sunrpc: remove unneeded fields from svc_serv struct Jeff Layton
2008-05-18  2:35     ` [PATCH 3/3] [RFC] knfsd: remove signal defines and extraneous variables Jeff Layton
2008-05-19  6:07 ` [PATCH 0/3] [RFC] knfsd: convert to kthread API and remove signaling for shutdown Neil Brown
     [not found]   ` <18481.6416.571430.593722-wvvUuzkyo1EYVZTmpyfIwg@public.gmane.org>
2008-05-19 21:01     ` Jeff Layton
2008-05-19 22:00     ` Greg Banks
2008-05-19 23:52       ` Neil Brown
     [not found]         ` <18482.4782.858347.981553-wvvUuzkyo1EYVZTmpyfIwg@public.gmane.org>
2008-05-20  2:04           ` Greg Banks
2008-05-20  2:24         ` Jeff Layton
     [not found]           ` <20080519222457.6f24daa5-PC62bkCOHzGdMjc06nkz3ljfA9RmPOcC@public.gmane.org>
2008-05-20  2:34             ` Greg Banks
2008-05-20 11:05               ` Jeff Layton
     [not found]             ` <483238B3.4010702-cP1dWloDopni96+mSzHFpQC/G2K4zDHf@public.gmane.org>
2008-05-20 13:33               ` Talpey, Thomas
2008-05-20  3:13           ` Neil Brown
2008-05-20 11:13             ` Jeff Layton
     [not found]             ` <18482.16837.381955.636390-wvvUuzkyo1EYVZTmpyfIwg@public.gmane.org>
2008-05-20 20:26               ` Greg Banks
2008-05-20 20:36       ` Greg Banks
     [not found]         ` <4833364A.4010803-cP1dWloDopni96+mSzHFpQC/G2K4zDHf@public.gmane.org>
2008-05-21  1:48           ` Jeff Layton
     [not found]             ` <20080520214823.576ad7a7-RtJpwOs3+0O+kQycOl6kW4xkIHaj4LzF@public.gmane.org>
2008-05-21  3:29               ` Greg Banks
     [not found]                 ` <48339730.3060206-cP1dWloDopni96+mSzHFpQC/G2K4zDHf@public.gmane.org>
2008-05-30 16:25                   ` Jeff Layton
     [not found]                     ` <20080530122517.4f18c48e-RtJpwOs3+0O+kQycOl6kW4xkIHaj4LzF@public.gmane.org>
2008-05-30 18:46                       ` J. Bruce Fields
2008-05-30 20:59                         ` Jeff Layton
2008-06-02  5:51                       ` Greg Banks
     [not found]                         ` <48438A76.6000400-cP1dWloDopni96+mSzHFpQC/G2K4zDHf@public.gmane.org>
2008-06-02 10:41                           ` Jeff Layton
     [not found]                             ` <20080602064132.10c69c88-RtJpwOs3+0O+kQycOl6kW4xkIHaj4LzF@public.gmane.org>
2008-06-03  3:27                               ` Greg Banks
     [not found]                                 ` <4844BA3C.3010605-cP1dWloDopni96+mSzHFpQC/G2K4zDHf@public.gmane.org>
2008-06-03 10:51                                   ` Jeff Layton

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox