SIGBUS and hang in dl* functions after truncate

Justin Fries justinf@us.ibm.com
Tue Nov 26 14:42:43 GMT 2024


Hi Florian —

Thank you for the link and explanation.  I shouldn’t be surprised that the inestimable Jonathan Corbet has an excellent article on the history of this very situation.  LWN was my browser homepage for almost twenty years, until tabs took over.  It is clearly past time I renewed my subscription!

With appreciation,

Justin Fries
IBM MQ Development: Distributed Service
IBM Automation




On Nov 26, 2024, at 4:23 AM, Florian Weimer <fweimer@redhat.com> wrote:

* Justin Fries via Libc-help:


I thought I would inquire to see whether glibc could avoid the SIGBUS
as on those other systems, or failing that whether I can handle the
SIGBUS in a way that lets glibc release its locks, currently elided by
my use of siglongjmp() as shown in the attached test case.  Thanks in
advance for any advice you can share.

We already set MAP_DENYWRITE in an attempt to make this scenario
impossible.  Some very old kernels indeed refused to modify the shared
object with ETXTBSY, but this functionality was removed from the Linux
kernel.

Some background is available here:

 The shrinking role of ETXTBSY
 <https://lwn.net/Articles/866493/  >

Thanks,
Florian



More information about the Libc-help mailing list