Because a EIO or similar should _not_ be re-tried or kept dirty.
Imagine a bad user that goes over his quota on purpose, and then every
single write will always return an error. What should we do? Let him eat
all physical memory? I don't think so.
write-out errors will be ignored. We _might_ send a signal or something,
but considering the fact that we don't even know who caused the dirty page
in the first place, even that is kind of hard.
Shared memory and out-of-swap is special - the shared memory code is
supposed to check that we have enough memory before it even allocates
anything.
Linus
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/