Re: 2.2.x kernels not filling in siginfo_t.si_addr on SEGV?

From: Camm Maguire (camm@enhanced.com)
Date: Thu Mar 08 2001 - 22:28:39 EST


Greetings, and thank you so much for your helpful reply! Was this on
an i386? I'm specifically looking for a way to do his on arm, alpha,
and sparc, and I don't believe they have the cr2 member of struct
sigcontext. Any info you might have, including where you found this
solution, would be appreciated!

Take care,

David Watson <dwatson@cs.ucr.edu> writes:

> > Greetings!  Shouldn't a SIGSEGV fill in th si_addr member of the
> > siginfo_t structure passed to a signal handler?  Here is what I see
>
> Our group ran into this problem last summer while we were developing the
> Oasis+ DSM system. We worked around it by utilizing the following code
> fragment:
>
> void fault_handler(int sig, siginfo_t *sip, ucontext_t *ucp)
> {
> void *addr;
>
> addr = (void *) ucp->uc_mcontext.cr2;
>
> ...
> }
>
> Hope that helps.
>
> Regards,
> David
>
> --
> The theory of groups is a branch of Mathematics in which one does
> something to something and then compares the result with the result
> obtained from doing the same thing to something else, or something else to
> the same thing.
> J. R. Newman
>
>
>

-- 
Camm Maguire			     			camm@enhanced.com
==========================================================================
"The earth is but one country, and mankind its citizens."  --  Baha'u'llah
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Thu Mar 15 2001 - 21:00:09 EST