[llvm-dev] lld: sigbus error handling

Rui Ueyama via llvm-dev llvm-dev at lists.llvm.org
Mon Oct 23 15:21:25 PDT 2017


If your system does not support fallocate(2), we use ftruncate(2) to create
an output file. fallocate(2) succeeds even if your disk have less space
than the requested size, because it creates a sparse file. If you mmap such
sparse file, you'll receive a SIGBUS when the disk actually becomes full.

So, lld can die suddenly with SIGBUS when your disk becomes full, and
currently we are not doing anything about it. It's sometimes hard to notice
that that was caused by the lack of disk space.

I wonder if we should print out a hint (e.g. "Bus error -- disk full?")
when we receive a SIGBUS. Any opinions?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20171023/e50ba4d0/attachment.html>


More information about the llvm-dev mailing list