All of lore.kernel.org
 help / color / mirror / Atom feed
From: "lioupayphone" <lioupayphone@gmail.com>
To: "linux-nfs" <linux-nfs@vger.kernel.org>
Subject: why there is no "s_export_op" in nfs_super_block?
Date: Fri, 31 Oct 2008 08:56:20 +0800	[thread overview]
Message-ID: <200810310856000017530@gmail.com> (raw)

Hi, linux-nfs
	
	i have a question about NFS. 
	say, i have three different machines, Machine-1 is a NFS Server who exported its directory "/home/pub" to Machine-2, which mounted "mount -t nfs Machine-1:/home/pub /mnt/pub/".

	i want Machine-2 to be a NFS Server which exports its directory "/mnt/pub" to Machine-3, permission denied when i execute "mount -t nfs Machine-2:/mnt/pub/ /mnt/" on Machine-3.
	( btw : all the three machines are of linux 2.6.17-1, a little old kernel :-) )

	i browsed the code of 2.6.17-1 and found check_export() in fs/nfsd/exports.c , who told me there are two reasons for that :
	
	/* There are two requirements on a filesystem to be exportable.
	 * 1:  We must be able to identify the filesystem from a number.
	 *       either a device number (so FS_REQUIRES_DEV needed)
	 *       or an FSID number (so NFSEXP_FSID needed).
	 * 2:  We must be able to find an inode from a filehandle.
	 *       This means that s_export_op must be set.
	 */

	i think if i set "/home/pub Machin-2(sync,root_squash,fsid=1)" and "/mnt/pub Machine-2(sync,root_squash,fsid=2)" individually in "/etc/exports" of Machine-1 and Machine-2, the requirement-1 will be meet.
	but nfs_fill_super() failed to register its s_export_op. why? i am puzzled. thank you for your suggestions and explanations. :-)

 				
Best Regards!
lioupayphone


             reply	other threads:[~2008-10-31  0:56 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-10-31  0:56 lioupayphone [this message]
2008-11-04 22:36 ` why there is no "s_export_op" in nfs_super_block? J. Bruce Fields

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=200810310856000017530@gmail.com \
    --to=lioupayphone@gmail.com \
    --cc=linux-nfs@vger.kernel.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.