All of lore.kernel.org
 help / color / mirror / Atom feed
From: Michael Ellerman <michael@ellerman.id.au>
To: akpm@linux-foundation.org
Cc: linuxppc-dev@ozlabs.org, cel@us.ibm.com, paulus@samba.org,
	carll@us.ibm.com
Subject: Re: [patch 1/4] powerpc: fix for OProfile callgraph for Power 64 bit user apps
Date: Thu, 15 May 2008 10:20:44 +1000	[thread overview]
Message-ID: <1210810844.7603.17.camel@localhost> (raw)
In-Reply-To: <200805142312.m4ENCqLg026256@imap1.linux-foundation.org>

[-- Attachment #1: Type: text/plain, Size: 2002 bytes --]

On Wed, 2008-05-14 at 16:12 -0700, akpm@linux-foundation.org wrote:
> From: Carl Love <cel@us.ibm.com>
> 
> Fix the 64 bit user code backtrace which currently may hang the system.
> 
> Signed-off-by: Carl Love <carll@us.ibm.com>
> Cc: Maynard Johnson <maynardj@us.ibm.com>
> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>

Hi Carl,

I'm a bit confused by this change ..

> diff -puN arch/powerpc/oprofile/backtrace.c~powerpc-fix-for-oprofile-callgraph-for-power-64-bit-user-apps arch/powerpc/oprofile/backtrace.c
> --- a/arch/powerpc/oprofile/backtrace.c~powerpc-fix-for-oprofile-callgraph-for-power-64-bit-user-apps
> +++ a/arch/powerpc/oprofile/backtrace.c
> @@ -53,19 +53,40 @@ static unsigned int user_getsp32(unsigne
>  #ifdef CONFIG_PPC64
>  static unsigned long user_getsp64(unsigned long sp, int is_first)
>  {
> -	unsigned long stack_frame[3];
> +	unsigned long stk_frm_lr;
> +	unsigned long stk_frm_sp;
> +	unsigned long size;
> +
> +	/* Issue the __copy_from_user_inatomic() third argument currently
> +	 * only takes sizes 1, 2, 4 or 8 bytes.  Don't read more then the
> +	 * first 48 bytes of the stack frame.  That is all that is
> +	 * guaranteed to exist.  Reading more may cause the system to hang.

__copy_from_user_inatomic() accepts any value for n, it just has a
special case for 1, 2, 4 and 8 - but it should still work for other
values.

The old code copied 24 bytes from sp, and the new code copies 8 bytes
from sp and 8 bytes from sp + 16 - so I don't see where the 48 bytes
comes in to it?

Also the comment is a little hard to parse, I think you mean "Issue:
the ..", but I read "Issue" as a verb in that sentence. And "Don't read
more then" should be "than".

cheers

-- 
Michael Ellerman
OzLabs, IBM Australia Development Lab

wwweb: http://michael.ellerman.id.au
phone: +61 2 6212 1183 (tie line 70 21183)

We do not inherit the earth from our ancestors,
we borrow it from our children. - S.M.A.R.T Person

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 189 bytes --]

  reply	other threads:[~2008-05-15  0:20 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-05-14 23:12 [patch 1/4] powerpc: fix for OProfile callgraph for Power 64 bit user apps akpm
2008-05-15  0:20 ` Michael Ellerman [this message]
2008-05-15  3:58   ` Paul Mackerras
2008-05-15 14:50     ` Carl Love

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=1210810844.7603.17.camel@localhost \
    --to=michael@ellerman.id.au \
    --cc=akpm@linux-foundation.org \
    --cc=carll@us.ibm.com \
    --cc=cel@us.ibm.com \
    --cc=linuxppc-dev@ozlabs.org \
    --cc=paulus@samba.org \
    /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
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.