True, but it is not obvious that it's the other way round either. My point was merely that in these
cases (where we have a cross platform application) it's safer to assume the kernel is at fault until
proven otherwise. Which in these more obscure interactions between programs and kernels
probably means doing some research on what other systems do.
I'm not saying that always following the lead of other is better, but a standard is defined by it's
implementations and if all implementations make more or less the same (possibly) wrong
assumptions, those wrong assumptions arguably are the standard.
Even this doesn't mean we shouldn't deviate from that standard but doing so (breaking lines with
this implicit standard) probably does effectively constitute as a ABI change.
But it all comes down to wether it is more reasonable to play the "guilty until proven innocent"
versus the "innocent until proven guilty" card in these cases. Both (logically) in the end lead to the
same conclusion (if the problem is deterministic of course).