linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Richard Henderson <rth@twiddle.net>
To: Roland McGrath <roland@redhat.com>
Cc: Linus Torvalds <torvalds@transmeta.com>, linux-kernel@vger.kernel.org
Subject: Re: [PATCH] i386 vsyscall DSO implementation, take 2
Date: Sat, 3 May 2003 13:51:59 -0700	[thread overview]
Message-ID: <20030503205159.GA29384@twiddle.net> (raw)
In-Reply-To: <200305020033.h420XUi12295@magilla.sf.frob.com>

On Thu, May 01, 2003 at 05:33:30PM -0700, Roland McGrath wrote:
> +	/* What follows are the instructions for the table generation.
> +	   We have to record all changes of the stack pointer.  */
> +	.byte 0x04		/* DW_CFA_advance_loc4 */
> +	.long .Lpush_ecx-.LSTART_vsyscall
> +	.byte 0x0e		/* DW_CFA_def_cfa_offset */
> +	.byte 0x08		/* RA at offset 8 now */
> +	.byte 0x04		/* DW_CFA_advance_loc4 */
> +	.long .Lpush_edx-.Lpush_ecx
> +	.byte 0x0e		/* DW_CFA_def_cfa_offset */
> +	.byte 0x0c		/* RA at offset 12 now */
> +	.byte 0x04		/* DW_CFA_advance_loc4 */
> +	.long .Lenter_kernel-.Lpush_edx
> +	.byte 0x0e		/* DW_CFA_def_cfa_offset */
> +	.byte 0x10		/* RA at offset 16 now */
> +	/* Finally the epilogue.  */
> +	.byte 0x04		/* DW_CFA_advance_loc4 */
> +	.long .Lpop_ebp-.Lenter_kernel
> +	.byte 0x0e		/* DW_CFA_def_cfa_offset */
> +	.byte 0x12		/* RA at offset 12 now */
> +	.byte 0x04		/* DW_CFA_advance_loc4 */

You lost the save/restore notes for ebp.

> +	.type __kernel_sigreturn,@function
> +__kernel_sigreturn:
> +.LSTART_kernel_sigreturn:
> +	popl %eax		/* XXX does this mean it needs unwind info? */

Well, yes, but not because of this per-se.  The unwind info
for sigreturn will be quite complex because it should expose
the state of the machine after the return.  I.e. it would 
replace the rather complex code in both gdb and libgcc that
fakes some knowledge of the signal stack frame.

I can try to write it for you if you like.


r~

  reply	other threads:[~2003-05-03 20:39 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-05-02  0:33 Roland McGrath
2003-05-03 20:51 ` Richard Henderson [this message]
2003-05-04  6:21   ` [PATCH] fix vsyscall unwind information Richard Henderson
2003-05-04  7:34     ` Ulrich Drepper

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20030503205159.GA29384@twiddle.net \
    --to=rth@twiddle.net \
    --cc=linux-kernel@vger.kernel.org \
    --cc=roland@redhat.com \
    --cc=torvalds@transmeta.com \
    --subject='Re: [PATCH] i386 vsyscall DSO implementation, take 2' \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).