All of lore.kernel.org
 help / color / mirror / Atom feed
From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
To: Chris Friesen <cfriesen@nortelnetworks.com>
Cc: linuxppc-dev list <linuxppc-dev@lists.linuxppc.org>,
	Linux Kernel list <linux-kernel@vger.kernel.org>
Subject: Re: want to clarify powerpc assembly conventions in head.S	and	entry.S
Date: Tue, 13 Apr 2004 08:54:19 +1000	[thread overview]
Message-ID: <1081810459.1401.212.camel@gaston> (raw)
In-Reply-To: <407AA848.2000008@nortelnetworks.com>

On Tue, 2004-04-13 at 00:31, Chris Friesen wrote:
> Benjamin Herrenschmidt wrote:
> >>You knew this was coming...  What's special about syscalls?  There's the
> >>r3 thing, but other than that...
> >
> > The whole codepath is a bit different, there's the syscall trace,
> > we can avoid saving much more registers are syscalls are function
> > calls and so can clobber the non volatiles, etc...
> 
> It appears that we always enter the kernel via "transfer_to_handler",
> and return via "ret_from_except".  Is this true? (I'm running on at
> least a 74xx chip.)

ret_from_syscall for syscalls, hash_page also has a different
return to userland path, and load_up_{fpu,altivec} have their own
retturn path.
On ppc32 currently, the entry is almost always the same except for
hash_page and load_up_{fpu,altivec}

> I want to insert two new bits of code, one that gets called before the
> exception handler when we drop from userspace to kernelspace, and one as
> late as possible before going back to userspace.  I need to catch
> syscalls, interrupts, exceptions, everything.
> 
> The entry one I planned on putting in "transfer_to_handler", just before
> "addi   r11,r1,STACK_FRAME_OVERHEAD".
> 
> I was planning on putting the exit one just after the "restore_user"
> label.  Will this catch all possible returns to userspace?

No.

Ben.



  reply	other threads:[~2004-04-12 22:57 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-04-10  7:41 want to clarify powerpc assembly conventions in head.S and entry.S Chris Friesen
2004-04-10 10:05 ` Benjamin Herrenschmidt
2004-04-11  5:14   ` Chris Friesen
2004-04-11  5:25     ` Benjamin Herrenschmidt
2004-04-12 14:31       ` Chris Friesen
2004-04-12 22:54         ` Benjamin Herrenschmidt [this message]
2004-04-13  4:06           ` Chris Friesen
2004-04-15 15:24             ` Any hints on custom keyboard driver? Song Sam
2004-04-15 16:36               ` Brad Boyer
2004-04-16  6:18                 ` Song Sam
2004-04-13  4:31           ` want to clarify powerpc assembly conventions in head.S and entry.S Chris Friesen
2004-04-12 23:30         ` want to clarify powerpc assembly conventions inhead.S " Benjamin Herrenschmidt
2004-04-12 15:01       ` want to clarify powerpc assembly conventions in head.S " Chris Friesen
2004-04-11  6:00     ` want to clarify powerpc assembly conventions in head.Sand entry.S Benjamin Herrenschmidt
2004-04-11  5:45   ` want to clarify powerpc assembly conventions in head.S and entry.S Chris Friesen
2004-04-13 15:10   ` Segher Boessenkool
2004-04-13 15:45   ` Segher Boessenkool
2004-04-10 10:30 ` want to clarify powerpc assembly conventions in head.S andentry.S Benjamin Herrenschmidt

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=1081810459.1401.212.camel@gaston \
    --to=benh@kernel.crashing.org \
    --cc=cfriesen@nortelnetworks.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linuxppc-dev@lists.linuxppc.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.