On 12/07, Oleg Nesterov wrote:
>
> On 12/07, Jan Kratochvil wrote:
> >
> > On Mon, 07 Dec 2009 15:24:51 +0100, Oleg Nesterov wrote:
> > > But. &raise_sigusr2 is not equal to the "actual" address of 
> > > &raise_sigusr2(),
> > > this value points to the "thunk" (I do not know the correct English term)
> >
> > ppc64 calls it "function descriptor" (GDB
> > ppc64_linux_convert_from_func_ptr_addr):
> >    For PPC64, a function descriptor is a TOC entry,
>
> Thanks Jan.
>
> > in a data section,
>
> Yes!
>
> Now I can't understand how this test-case could ever work on ppc.
> step-jump-cont does:
>
>       regs->nip = raise_sigusr2;      <--- points to data section
>       ptrace(PTRACE_CONT);
>
> of course, the tracee gets SIGSEGV, this section is not executable.

Hmm. Looks like, "powerpc" means a lot of different hardware, and
_PAGE_EXEC may be 0. I didn't notice this when I quickly grepped
arch/powerpc/

IOW, perhaps on some machines r implies x ?

Is yes, this can explain why the results differ on different
machines.

Oleg.

Reply via email to