On Mon, 16 Jul 2007 18:11:02 -0500 "Steve French" <smfrench@xxxxxxxxx> wrote: > I would like opinions on how to handle a specific use question ... > > if the user has mounted e.g. \\server1\shareA (e.g. on a Samba > server) using defaults (and thus gotten support for the Unix > Extensions, but then does a second mount trying to disable Unix > Extensions (e.g. "mount -t cifs //server1/shareB /mnt -o nounix" then > what should the result be: > > > 1) mount fails? If so what return code - there is no easy way to pass > error strings back across mount (get_sb returns an int - a posix > return code) > > 2) mount succeeds, ignoring the "nounix" option but prints a warning to dmesg > > 3) mount succeeds but turns off the Unix Capability bits so no Unix > Extension requests are sent on either shareA or shareB (although the > server behavior will still be a little different than if the client > had not negotiated Unix Extensions at all, at least it will be > different unless the session drops and is reconnected at which time > the server will see the Unix Extensions disabled) > > 4) mount succeeds and no Unix Extension requests are sent on the tree > id for shareB (the requests to shareA are unaffected) > > etc. > > Ideas? > Following the principle of least suprise, then #4 would be best. If that's problematic, then I'd suggest just failing the mount outright with an -EBUSY. NFS has just gone through a not too dissimilar situation (mounting the same export twice with different options). It now fails with -EBUSY in that situation. A new mount option was also introduced (nosharedcache) that makes it fall back on the previous behavior (not sharing superblocks between mounts of the same export). -- Jeff Layton <jlayton@xxxxxxxxxx> - To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html