NeilBrown <neilb@xxxxxxxx> writes: >> mount //foo /mnt -o A >> mount //foo /mnt -o B # different options >> >> Since the SB are different it works, fine. >> >> But mounting a 3rd time with options A succeeds, where from a user POV I >> would have expected to fail. > > Why? Because it's already mounted. >> mount //foo /mnt -o A >> mount //foo /mnt -o B >> mount //foo /mnt -o A >> # ok => what? >> >> Shouldn't we check the stack of filesystems mounted at the path instead of >> just the last one? > > Why? > > I think that the main reason that -EBUSY is important is that people > often run "mount -a" and don't expect filesystems that are already > mounted to be mounted again. The current behaviour achieves that. A is already mounted and mouting again succeeds. The current behaviour is different from what you described. This is exactly what I was saying earlier "from a user POV". Side-note: mount from coreutils has some logic to deal with -a and network filesystems, because there are some issues with the default behaviour. I can't recall the details about that, would have to look at the code again. Cheers, -- Aurélien Aptel / SUSE Labs Samba Team GPG: 1839 CB5F 9F5B FB9B AA97 8C99 03C8 A49B 521B D5D3 SUSE Linux GmbH, Maxfeldstraße 5, 90409 Nürnberg, Germany GF: Felix Imendörffer, Jane Smithard, Graham Norton, HRB 21284 (AG Nürnberg)