On Thu, 27 Jul 2000, Andries Brouwer wrote:
> My point of view is rather different.
> If a user has union-mounts then probably she knows what she is doing.
> I'll leave finding the most suitable semantics to you.
> But we must not have gazillions of people upgrading 2.2 to 2.4
> complaining: mount is broken, umount is broken - I just unmounted
> and it is still there! The
> "Return EBUSY if mount is called with the same filesystem
> on the same mount point (without the -o remount flag)"
Wonderful. Could you add the following 4 options to mount(8):
-replace
-after
-before
-over
(syntax is completely up to you, but I would seriously recommend _not_
using -o <foo> for that) and just pass them to the mount(2) in flags
(MNT_REPLACE, MNT_AFTER, MNT_BEFORE, MNT_OVER)? I'll add such flags and
restore the 2.2 behaviour for cases that existed in 2.2.
Rules:
none of these flags: same behaviour as in 2.2
MNT_REPLACE: remount, but new filesystem may be different from old. Atomic
(i.e. there is no interval when nothing is mounted at the mountpoint). If
new fs differs from the old one and old is busy - -EBUSY.
MNT_AFTER, MNT_BEFORE: - as soon as we get unions these will add a
new member resp. in the end or beginning of the chain. Fail if there is a
stack on the mountpoint.
MNT_OVER: if nothing mounted on a mountpoint - same as if none of these
flags had been set, if we have a union with more than one element - fail,
if we have a stack or plain mount - mount atop of it, forming a stack.
If more than one of these bits is set - -EINVAL, they are obviously
mutually exclusive.
Deal? BTW, while we are at it, could you add -bind (MNT_BIND)
option (can be combined with any of these)? -t bind syntax is a kludge and
I would be glad to get rid of it.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/
This archive was generated by hypermail 2b29 : Mon Jul 31 2000 - 21:00:24 EST