From: Neil Brown <neilb@suse.de>
To: Christoph Hellwig <hch@infradead.org>,
linux-fsdevel@vger.kernel.org, nfs@lists.sourceforge.net
Subject: Re: [NFS] [PATCH 0/18] export operations rewrite
Date: Mon, 7 May 2007 09:52:35 +1000 [thread overview]
Message-ID: <17982.27203.841272.221428@notabene.brown> (raw)
In-Reply-To: message from Neil Brown on Friday May 4
On Friday May 4, neilb@suse.de wrote:
> On Tuesday May 1, hch@infradead.org wrote:
> > - the calling conversion on the decode side where we first call
> > ->decode_fh to split the filehandle into two blobs only to
> > recurse back into exportfs and then recurse back into the filesystem
> > seems rather odd. By having two methods to get the dentry and
> > parent directly from the on the wire file handle this big callstack
> > collapses to a very simple one.
>
> This is the bit I was particularly missing. I see now how this aspect
> was awkward before, and how your changes make the flow clearer.
>
> Getting rid of s_export_op->find_exported_dentry is something I'm very
> happy about. There was actually bug lurking there that I never got
> around to fixing. The code:
> - /* Ok, we can export it */;
> - if (!inode->i_sb->s_export_op->find_exported_dentry)
> - inode->i_sb->s_export_op->find_exported_dentry =
> - find_exported_dentry;
>
> assumes that the address of find_exported_dentry will never change.
> But if you unload nfsd.ko, then re-load it. it could be different, yet a
> filesystem could still have to old value in it's s_export_op. That
> would be bad.
> I'm glad it is gone.
...but now I remember why it was there...
I didn't want filesystems to depend on exportfs.ko.
nfsd, depends on exportfs, but currently filesystems don't. They
can be compiled into the kernel without including exportfs.
With your patches in place, I got a compile error with a config in
which nfsd is a module (and so exportfs is) but ext2 and ext3 are
compiled in.
The error was that generic_fh_to_dentry and generic_fh_to_parent were
not defined.
Now those two functions together with exportfs_d_alloc are fairly
small and could go directly in fs/something.c. They could almost be
inlined in linux/exportfs.h.
Would you be able to respin that second patch series with one of those
changes?
Thanks,
NeilBrown
next prev parent reply other threads:[~2007-05-06 23:53 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-03-17 1:09 [PATCH 0/18] export operations rewrite Christoph Hellwig
2007-03-28 16:39 ` [NFS] " Christoph Hellwig
2007-03-30 3:34 ` Neil Brown
2007-05-01 10:39 ` [NFS] " Christoph Hellwig
2007-05-04 6:49 ` Neil Brown
2007-05-06 23:52 ` Neil Brown [this message]
2007-05-07 0:06 ` Neil Brown
2007-05-07 7:51 ` [NFS] " Christoph Hellwig
2007-05-13 20:41 ` Christoph Hellwig
2007-05-14 0:13 ` Neil Brown
2007-04-01 15:03 ` David Woodhouse
2007-05-13 20:43 ` [NFS] " Christoph Hellwig
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=17982.27203.841272.221428@notabene.brown \
--to=neilb@suse.de \
--cc=hch@infradead.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=nfs@lists.sourceforge.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).