This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[committed] Fix signal trampoline detection on hppa-linux


The attached change fixes an unwind problem during pthread cancellation. For threads, it turns out the return address is not marked as undefined. As a result, pa32_fallback_frame_state is called with an invalid context and the code generates a segmentation fault looking for the signal trampoline. This causes 30_threads/thread/native_handle/ cancel.cc and a number
of glibc tests to fail.

This change adds code to test whether the read accesses in pa32_fallback_frame_state are ok. This prevents the segmentation fault and the outer most frame is now detected correctly.

Tested on hppa-unknown-linux-gnu.  Committed to trunk, 4.9 and 4.8.

Dave
--
John David Anglin	dave.anglin@bell.net


Attachment: linux-unwind.h.d.txt
Description: Text document


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]