[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH]: grub: Fix sparc64 setjmp implementation, update grub_setjmp
From: |
Yoshinori K. Okuji |
Subject: |
Re: [PATCH]: grub: Fix sparc64 setjmp implementation, update grub_setjmp() attributes. |
Date: |
Sat, 28 Mar 2009 23:34:25 +0900 |
User-agent: |
KMail/1.9.10 |
On Saturday 28 March 2009 22:39:48 Robert Millan wrote:
> On Wed, Mar 25, 2009 at 09:13:52PM -0700, David Miller wrote:
> > The FSF has received my copyright assignment paperwork so I'm starting
> > to feed fresh copies of my sparc64 changes.
> >
> > Here, we fix the setjmp assembler implementation for sparc64 and also
> > we fix all of the grub_setjmp declarations to have the proper
> > "returns_twice" attribute.
> >
> > For normal "setjmp" GCC recognizes this special function name and
> > internally adds the attribute. Amongst other things this makes sure
> > GCC does not emit a tail-call in functions that call grub_setjmp().
> > Since we use a special name for setjmp in GRUB we need to explicitly
> > add the attribute.
> >
> > Without this fix, GCC on sparc64 really did emit a tail-call in the
> > nomal module where grub_setjmp() is called, and this led to myserious
> > crashes :-)
> >
> > 2009-03-25 David S. Miller <address@hidden>
> >
> > * normal/sparc64/setjmp.S: Fix setjmp implementation.
> > * include/grub/sparc64/setjmp.h (grub_jmp_buf): Update.
> > (grub_setjmp): Mark with 'returns_twice' attribute.
> > * include/grub/i386/setjmp.h (grub_setjmp): Likewise
> > * include/grub/powerpc/setjmp.h (grub_setjmp): Likewise.
> > * include/grub/x86_64/setjmp.h (grub_setjmp): Likewise.
>
> Hi,
>
> Unless there's someone else in the list who is knowledgeable about sparc
> assembly and is going to review this part of David's patch, I'm going to
> assume it's fine and check it in.
>
> This also goes for future patches sent by David. So if you will speak,
> do it now :-)
I know a bit, but not that much. So I vote for that we just trust him. ;)
Regards,
Okuji