[linux-cifs-client] Re-exporting cifs mount over NFSv4

Christoph Hellwig hch at infradead.org
Sat Mar 8 14:59:14 GMT 2008


On Fri, Mar 07, 2008 at 05:53:28PM +1100, Paul TBBle Hampson wrote:
> I discovered the problem. In late October 2007, the exportfs
> interface was changed [1], and cifs was not updated during the
> update. (export.c was last touched non-trivially in early October)

That's because the existing export code was not enough already and
I'd rather let it not work at all than as dangerously half-working
as it was before..

> cifs currently is missing the one mandatory method fh_to_dentry in
> the export_operations structure, so the exportfs code rejects it as
> an exportable filesystem.

It also needs at least a get_parent and a fh_to_parent if it wants
to support subtree_check.  The former is currently marked optional
but it actually is required for proper operation.  I will fix the
documentation and add a check for it in my next batch of nfs exporting
patches.

> I dunno if anyone's planning to fix this, I think I'll have a go
> just pointing it at generic_fh_to_dentry (as this seems to be the
> intended behaviour under the old API) and see if that works or if
> it sets our machines on fire.

I don't think this is correct.  As far as I can see cifs does not
use stable inode numbers to identify object.  The file handles need
to encode some form of identifaction that get back to an object in
all cases, e.g. after dentry and inode cache are flushed or even if
the exporting system crashed.



More information about the linux-cifs-client mailing list