tech-kern archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: exact semantics of union mounts (and TRYEMULROOT)

>> I don't think it's silly.  Slavish adherence to an system A's
>> semantics when working on system B, just for the sake of adherence
>> that _does_ strike me as silly.  Maybe that's not actually what's
>> going on here, but that's what it looks like to me.
> What, exactly, is gained by being gratuitously different from the
> reference implementation of a concept?

Well, first, I reject the implicit assumption that there _is_ a
reference implementation for union mounts.  You may consider the Plan 9
implementation to be a reference implementation, but I don't see any
particular reason for anyone else to agree.  (I'm assuming there's no
POSIX spec for union mounts or any such, since you haven't mentioned
any and I don't see any reason you wouldn't've.)  The only reason I see
to consider the Plan 9 version a reference implementation is that they
originated the idea (if they actually did - a question I can't speak to
either way), and I think I addressed that upthread.

That said, to answer the question if, arguendo, we stipulate that there
is a reference implementation:

_Gratuitously_ different?  Fairly little.  Ecosystem variety is about
the only thing I can think of.  (Ecosystem variety is a good thing in
general.  I think it's rarely enough to be worth deliberately
differing, though it can make differences desirable after the fact
regardless of what actually provoked them.)

The differences in the case at hand do not strike as gratuitous
differences.  They strike me as differences for the sake of ease of
implementation - witness, for example, the issues you see trying to
mutate the existing NetBSD semantics into something closer to the Plan
9 semantics.  The existing NetBSD semantics are useful enough to find
users, and, apparently, enough easier to implement to have provoked

/~\ The ASCII				  Mouse
\ / Ribbon Campaign
 X  Against HTML
/ \ Email!	     7D C8 61 52 5D E7 2D 39  4E F1 31 3E E8 B3 27 4B

Home | Main Index | Thread Index | Old Index