Messages in this thread | | | Date | Fri, 20 Feb 2015 14:05:47 -0500 | From | "J. Bruce Fields" <> | Subject | Re: [RFC PATCH 5/8] KEYS: exec request-key within the requesting task's init namespace |
| |
On Fri, Feb 20, 2015 at 12:07:15PM -0600, Eric W. Biederman wrote: > "J. Bruce Fields" <bfields@fieldses.org> writes: > > > On Fri, Feb 20, 2015 at 05:33:25PM +0800, Ian Kent wrote: > > >> The case of nfsd state-recovery might be similar but you'll need to help > >> me out a bit with that too. > > > > Each network namespace can have its own virtual nfs server. Servers can > > be started and stopped independently per network namespace. We decide > > which server should handle an incoming rpc by looking at the network > > namespace associated with the socket that it arrived over. > > > > A server is started by the rpc.nfsd command writing a value into a magic > > file somewhere. > > nit. Unless I am completely turned around that file is on the nfsd > filesystem, that lives in fs/nfsd/nfs.c. > > So I bevelive this really is a case of figuring out what we want the > semantics to be for mount and propogating the information down from > mount to where we call the user mode helpers.
Oops, I agree. So when I said:
The upcalls need to happen consistently in one context for a given virtual nfs server, and that context should probably be derived from rpc.nfsd's somehow.
Instead of "rpc.nfsd's", I think I should have said "the mounter of the nfsd filesystem".
Which is already how we choose a net namespace: nfsd_mount and nfsd_fill_super store the current net namespace in s_fs_info. (And then grep for "netns" to see the places where that's used.)
--b.
| |