public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* nfs4 filesystem mounted via the "bind" option reports wrong fstype
@ 2007-08-27 18:32 Gabriel Barazer
  2007-08-27 18:40 ` J. Bruce Fields
  0 siblings, 1 reply; 5+ messages in thread
From: Gabriel Barazer @ 2007-08-27 18:32 UTC (permalink / raw)
  To: nfsv4; +Cc: linux-kernel, nfs, jkar8572

Hi,

A nfs4 filesystem, mounted elsewhere via the "bind" option (the usual 
way to do with nfsv4 and its pseudofs), reports wrong fstype "nfs" 
instead of "nfs4" filesystem.
An example is much easier to understand :
Server-side :
- /exports is the pseudo root filesystem (fsid=0 option in /etc/exports)
- /exports/data is a mountpoint for another filesystem (not the same 
device-id as /exports). This condition seems to be what triggers the bug
- /exports/data must be exported with the "nohide" option (again, the 
usual way to do se with nfsv4)

Client-side :
- mount server:/  on /imports
- mount "bind" /imports/data on /home/data
(this magically shows a second nfs mount in /proc/mounts)
And here is the bug : this second mount is of fstype "nfs" instead of 
"nfs4" although the options field contains "vers=4".

This is like a cosmetic bug, but this becomes a problem when some apps 
need to differentiate nfs and nfs4 fstype (e.g. linuxquota uses it to 
know how to handle the nfs source-path)

Gabriel

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

* Re: nfs4 filesystem mounted via the "bind" option reports wrong fstype
  2007-08-27 18:32 nfs4 filesystem mounted via the "bind" option reports wrong fstype Gabriel Barazer
@ 2007-08-27 18:40 ` J. Bruce Fields
  2007-08-27 19:15   ` Al Viro
  0 siblings, 1 reply; 5+ messages in thread
From: J. Bruce Fields @ 2007-08-27 18:40 UTC (permalink / raw)
  To: Gabriel Barazer; +Cc: nfsv4, nfs, linux-kernel, jkar8572

On Mon, Aug 27, 2007 at 08:32:51PM +0200, Gabriel Barazer wrote:
> Hi,
> 
> A nfs4 filesystem, mounted elsewhere via the "bind" option (the usual 
> way to do with nfsv4 and its pseudofs), reports wrong fstype "nfs" 
> instead of "nfs4" filesystem.
> An example is much easier to understand :
> Server-side :
> - /exports is the pseudo root filesystem (fsid=0 option in /etc/exports)
> - /exports/data is a mountpoint for another filesystem (not the same 
> device-id as /exports). This condition seems to be what triggers the bug
> - /exports/data must be exported with the "nohide" option (again, the 
> usual way to do se with nfsv4)
> 
> Client-side :
> - mount server:/  on /imports
> - mount "bind" /imports/data on /home/data

There's no reason not to just mount server:/exports/data directly at
/home/data; the bind mounts are just a workaround for the somewhat
primitive exports facility on the server side.

> (this magically shows a second nfs mount in /proc/mounts)
> And here is the bug : this second mount is of fstype "nfs" instead of 
> "nfs4" although the options field contains "vers=4".

But, yes, that sounds like a bug, thanks.

--b.

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

* Re: nfs4 filesystem mounted via the "bind" option reports wrong fstype
  2007-08-27 18:40 ` J. Bruce Fields
@ 2007-08-27 19:15   ` Al Viro
  2007-08-27 19:32     ` J. Bruce Fields
  0 siblings, 1 reply; 5+ messages in thread
From: Al Viro @ 2007-08-27 19:15 UTC (permalink / raw)
  To: J. Bruce Fields; +Cc: Gabriel Barazer, nfsv4, nfs, linux-kernel, jkar8572

On Mon, Aug 27, 2007 at 02:40:59PM -0400, J. Bruce Fields wrote:
 
> There's no reason not to just mount server:/exports/data directly at
> /home/data; the bind mounts are just a workaround for the somewhat
> primitive exports facility on the server side.

Bullshit.  Bindings are first-class operations on _client_, regardless
of fs types involved.

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

* Re: nfs4 filesystem mounted via the "bind" option reports wrong fstype
  2007-08-27 19:15   ` Al Viro
@ 2007-08-27 19:32     ` J. Bruce Fields
  2007-08-27 20:08       ` Gabriel Barazer
  0 siblings, 1 reply; 5+ messages in thread
From: J. Bruce Fields @ 2007-08-27 19:32 UTC (permalink / raw)
  To: Al Viro; +Cc: Gabriel Barazer, nfsv4, nfs, linux-kernel, jkar8572

On Mon, Aug 27, 2007 at 08:15:07PM +0100, Al Viro wrote:
> On Mon, Aug 27, 2007 at 02:40:59PM -0400, J. Bruce Fields wrote:
>  
> > There's no reason not to just mount server:/exports/data directly at
> > /home/data; the bind mounts are just a workaround for the somewhat
> > primitive exports facility on the server side.
> 
> Bullshit.  Bindings are first-class operations on _client_, regardless
> of fs types involved.

I know.  Did I say something to the contrary?

Maybe I was too terse; in more detail: the original poster appears to be
mounting server:/exports/data by first mounting server:/ somewhere and
then bind-mounting the exports/data someplace else.  I couldn't see an
obvious reason they'd be using two steps instead of just performing a
single mount of server:/exports/data.

So my assumption was that this was due to a confused memory of some
server-side setup instructions.  (On the server side, nfs4 export setup
often requires the administrator to do some extra bind mounts which
shouldn't really be necessary.)

--b.

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

* Re: nfs4 filesystem mounted via the "bind" option reports wrong fstype
  2007-08-27 19:32     ` J. Bruce Fields
@ 2007-08-27 20:08       ` Gabriel Barazer
  0 siblings, 0 replies; 5+ messages in thread
From: Gabriel Barazer @ 2007-08-27 20:08 UTC (permalink / raw)
  To: J. Bruce Fields; +Cc: Al Viro, nfsv4, nfs, linux-kernel, jkar8572

On 08/27/2007 9:32:42 PM +0200, "J. Bruce Fields" <bfields@fieldses.org> 
wrote:
> On Mon, Aug 27, 2007 at 08:15:07PM +0100, Al Viro wrote:
>> On Mon, Aug 27, 2007 at 02:40:59PM -0400, J. Bruce Fields wrote:
>>  
>>> There's no reason not to just mount server:/exports/data directly at
>>> /home/data; the bind mounts are just a workaround for the somewhat
>>> primitive exports facility on the server side.
>> Bullshit.  Bindings are first-class operations on _client_, regardless
>> of fs types involved.
> 
> I know.  Did I say something to the contrary?
> 
> Maybe I was too terse; in more detail: the original poster appears to be
> mounting server:/exports/data by first mounting server:/ somewhere and
> then bind-mounting the exports/data someplace else.  I couldn't see an
> obvious reason they'd be using two steps instead of just performing a
> single mount of server:/exports/data.
> 
> So my assumption was that this was due to a confused memory of some
> server-side setup instructions. (On the server side, nfs4 export setup
> often requires the administrator to do some extra bind mounts which
> shouldn't really be necessary.)

Right. When setting up the clients, I remembered these "bind" mount 
things, and applied the same client-side because at this time I had 
other bugs for which I thought "bind" mount was the solution. In fact 
it's not, but as nfs4 is seen as a unique filesystem and I had several 
exported volumes, It was easier to mount the nfsv4 pseudoroot, then 
"bind" mount all the volumes from it.

But the bug's still here, and since these additional mounts appear 
"magically" in /proc/mounts, I don't know where to look at in the kernel 
source. The nfsv4 client code must have somewhere a kind of nfs4 
automounter for "nohide" volumes. A bit ugly IMHO, but the only way to 
show quotas for separates nfsv4 exported volumes too.

Gabriel

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

end of thread, other threads:[~2007-08-27 20:08 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-08-27 18:32 nfs4 filesystem mounted via the "bind" option reports wrong fstype Gabriel Barazer
2007-08-27 18:40 ` J. Bruce Fields
2007-08-27 19:15   ` Al Viro
2007-08-27 19:32     ` J. Bruce Fields
2007-08-27 20:08       ` Gabriel Barazer

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