This is the mail archive of the glibc-bugs@sourceware.org mailing list for the glibc 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]

[Bug libc/22564] Enhance Safety check


https://sourceware.org/bugzilla/show_bug.cgi?id=22564

--- Comment #4 from Adhemerval Zanella <adhemerval.zanella at linaro dot org> ---
(In reply to Akhilesh Kumar from comment #3)
> >I am not really understanding the issue you are seeing. The cancellation >handler (sigcancel_handler) is explicit enabled with SA_SIGINFO so kernel >should provide a correct and valid siginfo_t as second argument for signal >handler.  And as least si_signo, si_errno, and si_code should be defined for >all signals.
> 
> >Although siginfo_t is implemented in Linux as an union, I see no point in >actually change the order of tests.  Ideally the si_pid should be manipulated >only for certain types of signals, so I think the guard for sig == SIGCANCEL >is correct here.
> 
> 
> >I think the changes you are proposing are giving you more information just by ?>change, do you have a testcase that trigger this issue?
> 
> I tried but unable to reproduce this issue.  
> During crash analysis I observed the above behavior. I am having only the
> core dump symbol file for analysis.

Also I think the stacktrace you posted is not really correct:

(gdb) info threads 
  Id   Target Id         Frame 
* 1    LWP 6806          sighandler_setxid (sig=<optimized out>, si=0x0,
ctx=<optimized out>) at nptl-init.c:269

The sighandler_setxid is also setup with SA_SIGINFO and the si argument should
not be 0.  I think your programs is messing with the stackpointer and thus gdb
is not being able to correct get the signal stackframe information (si is set
by setup_rt_frame at arch/arm/kernel/signal.c).

-- 
You are receiving this mail because:
You are on the CC list for the bug.

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