On Tue, 2013-07-30 at 17:12 -0400, J. Bruce Fields wrote: > On Mon, Jul 29, 2013 at 10:42:57AM -0700, Eric W. Biederman wrote: > > > > Adding some people who pay more attention to nfs in network namespaces > > than I usually do. > > > > Oleg Nesterov <oleg@xxxxxxxxxx> writes: > > > > > On 07/28, Eric W. Biederman wrote: > > >> > > >> > This untested patch should fix it without any need to worry about > > >> > dynamic behavior. > > > > > > Yeees ;) I was thinking about this change too, but I have no idea > > > what this ->nodename actually means for nfs. > > > > > > If you are going to send this patch - great! > > > > Just batting it around for now, and hoping we have the right combination > > of eyeballs look at it. There are more places in nfs that have > > questionable uses of utsname() instead of init_utsname(). So I think we > > probably need a more comprehensive patch at the very least. > > > > nfsclnt_reclaim is never called from userspace. > > So, looking just at this one.... > > Note I think you mean nlmclnt_reclaim. > > That's part of the client's handling of server reboots. The client > knows that it should hold some file lock, but knows that the server has > now forgotten that fact, and needs to send a "reclaim" to get the lock > back. > > That reclaim will get kicked off when the client's notified that the > server rebooted. > > So we're not in the context of whoever originally did the > fcntl(.,F_SETLK,.), and trying to get the namespace out of current is > clearly wrong. > > nlm_host currently has a "struct net *net" field. Maybe we also need to > stash a "struct uts_namespace *", or just a copy of the nodename? The struct rpc_clnt already has that information in the cl_nodename field. Cheers Trond -- Trond Myklebust Linux NFS client maintainer NetApp Trond.Myklebust@xxxxxxxxxx www.netapp.com ��.n��������+%������w��{.n�����{��w���jg��������ݢj����G�������j:+v���w�m������w�������h�����٥