Perhaps. I guess i'm showing my age but i remember when the
hardware MMU would generate a "buss error" and more than
once the distinction between buss error and segmentation
violation actually pointed to the programming error. If so
it is way past time to alias SIGBUS and deprecate the old
name. We're also overdue for fixing the manpages where
signal(7) defines SIGBUS as "Bus error (bad memory access)"
which has nothing to do with space availabilty.
> SIGSEGV is used where mapping itself cannot be accessed (no mapping
> or insufficient permission); SIGBUS where mapped object cannot be
> accessed - I/O error or, more usually, beyond end of (last page of)
> file. Linux just follows the standards on those.
>
> It would be inappropriate to use anything but SIGBUS for no space.
I would dispute that; as the only signal that even hints at
out-of-space is SIGXFSZ which is why i mentioned it. Since
we are going beyond POSIX and SUS we could use an altogether
new signal but that is a much bigger discussion. SIGFULL
anyone? I seem to recall a discussion regarding a mechanism
that would allow notifying processes that memory is tight,
but that should by default ignore not terminate so should not
shared with this.
The main thing is the signal should be catchable and by
default should terminate without core. As long as a corrupt
pointer doesn't cause the same signal as running out of
space i'm ok with it.
I've said my piece and I'll shut up now.
-- ________________________________________________________________ J.W. Schultz Pegasystems Technologies email address: jw@pegasys.wsRemember Cernan and Schmitt - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/