[Bug dyninst/15619] on rawhide ia32, simple scripts sometimes hang
jistone at redhat dot com
sourceware-bugzilla@sourceware.org
Thu Jun 13 19:55:00 GMT 2013
http://sourceware.org/bugzilla/show_bug.cgi?id=15619
Josh Stone <jistone at redhat dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |jistone at redhat dot com
--- Comment #3 from Josh Stone <jistone at redhat dot com> ---
(In reply to David Smith from comment #0)
> (perhaps related to bug #14655 or bug #15029)
I think for the first, you meant bug #14665.
(In reply to David Smith from comment #2)
> On ia32, an strace'd stapdyn reports:
>
> ====
> clone(child_stack=0xb616c3a4,
> flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|
> CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID,
> parent_tidptr=0xb616cba8, {entry_number:6, base_addr:0xb616cb40,
> limit:1048575, seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1,
> seg_not_present:0, useable:1}, child_tidptr=0xb616cba8) = 8637
> getcpu([0], NULL, 0) = 0
> futex(0xb616ec8c, FUTEX_WAKE_OP, 1, 1, 0xb616ec88, {FUTEX_OP_SET, 0,
> FUTEX_OP_CMP_GT, 1}) = 1
> futex(0xb616ec40, FUTEX_WAKE, 1) = 1
> --- SIGTERM {si_signo=SIGTERM, si_code=SI_TKILL, si_pid=8635, si_uid=5183} ---
It looks like the SIGTERM came here.
> sigreturn() (mask []) = 1
> futex(0xb616ec8c, FUTEX_WAKE_OP, 1, 1, 0xb616ec88, {FUTEX_OP_SET, 0,
> FUTEX_OP_CMP_GT, 1}) = 1
> futex(0xb616ec40, FUTEX_WAKE, 1) = 1
> rt_sigtimedwait([HUP INT QUIT TERM], NULL, NULL, 8
> ====
>
> So, we're stuck in rt_sigtimedwait(). Which means that we either missed the
> signal or it got masked off somewhere.
It seems it actually didn't get masked early on, so it was already delivered
before we wait for it. I think we could just mask, check if it already
arrived, and only then do the sigwait. I can play with this a bit.
--
You are receiving this mail because:
You are the assignee for the bug.
More information about the Systemtap
mailing list