All of lore.kernel.org
 help / color / mirror / Atom feed
* NFS remount bug
@ 2010-10-19 17:32 Chuck Lever
  2010-10-22 20:14 ` Chuck Lever
  0 siblings, 1 reply; 3+ messages in thread
From: Chuck Lever @ 2010-10-19 17:32 UTC (permalink / raw)
  To: util-linux-ng

Hi-

I'm working on the NFS submount commands.  These are found in the nfs-utils package, but they inherited a bunch of code from utils-linux to read fstab and manage mtab.

We've got a little problem with "-o remount".

At mount time, mount.nfs can negotiate with the target NFS server to determine how to contact it to send the MNT request and set up the communication parameters for the NFS protocol.  If the mount process succeeds, mount.nfs puts the command line options in /etc/mtab.

At umount time, umount.nfs reads these options back from /etc/mtab so that it can figure out how to send a UMNT request.  There are some problem cases, though.

If /etc/mtab is a link to /proc/mounts, the final fixed negotiated options appear there, not necessarily what was on the command line.  If the server reboots, some of those options might become stale.

If a remount is done, the options in /etc/mtab are wiped, so umount.nfs has no way to know how to contact the server.

We also know that everyone wants to toss /etc/mtab.

So: what future-proof mechanism do we use to preserve the mount command line so umount.nfs has a chance of working reliably?

In the meantime, is there a straightforward way to merge the old and new mount options during a remount?

-- 
chuck[dot]lever[at]oracle[dot]com





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

end of thread, other threads:[~2010-10-22 20:57 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-10-19 17:32 NFS remount bug Chuck Lever
2010-10-22 20:14 ` Chuck Lever
2010-10-22 20:57   ` Karel Zak

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.