tech-userlevel archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: Request for implementation of KERN_PROC_SIGTRAMP sysctl
On Wed, Oct 27, 2021 at 07:50:55 -0700, Jason Thorpe wrote:
> > On Oct 18, 2021, at 9:41 AM, John Marino (NetBSD) <netbsd%marino.st@localhost> wrote:
> >
> > yes, it sounds like a __in_signal_trampoline function would work for
> > the GCC unwind, and I would think it would work for GDB as well.
>
> Ok, I have implemented a new function with this signature:
>
> /*
> * __sigtramp_check_np --
> *
> * Non-portable function that checks if the specified program
> * counter value is within the signal return trampoline. Returns
> * the trampoline version numnber corresponding to what style of
> * trampoline it matches, or -1 if the program value is not within
> * the signal return trampoline.
> */
> int __sigtramp_check_np(void *pc);
>
> Usage would be like:
[... lots of code ...]
I was wondering if it might be easier to not put the onus onto the
caller and instead have a function that returns the interrupted
ucontext (or NULL, if the pc is not in a trampoline).
ucontext_t *__unwind_sigtramp(return_pc, return_sp)
-uwe
Home |
Main Index |
Thread Index |
Old Index