[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <OF43365008.5559F266-ON482575F2.001F17EE-482575F2.00212259@sunplusct.com>
Date: Mon, 13 Jul 2009 13:56:22 +0800
From: liqin.chen@...plusct.com
To: Arnd Bergmann <arnd@...db.de>
Cc: Christoph Hellwig <hch@...radead.org>, linux-arch@...r.kernel.org,
linux-arch-owner@...r.kernel.org, linux-kernel@...r.kernel.org,
Roland McGrath <roland@...hat.com>,
Linus Torvalds <torvalds@...ux-foundation.org>
Subject: Re: [PATCH V2] score: add regset support
linux-arch-owner@...r.kernel.org 写于 2009-07-10 20:49:44:
> struct pt_regs {
> unsigned long pad0[6];
> unsigned long orig_r4;
> unsigned long orig_r7;
> unsigned long regs[32];
>
> unsigned long cel;
> unsigned long ceh;
>
> unsigned long sr0; /* cnt */
> unsigned long sr1; /* lcr */
> unsigned long sr2; /* scr */
>
> unsigned long cp0_epc;
> unsigned long cp0_ema;
> unsigned long cp0_psr;
> unsigned long cp0_ecr;
> unsigned long cp0_condition;
>
> long is_syscall;
> };
>
> to
>
> struct pt_regs {
> unsigned long regs[32];
>
> unsigned long cel;
> unsigned long ceh;
>
> unsigned long sr0; /* cnt */
> unsigned long sr1; /* lcr */
> unsigned long sr2; /* scr */
>
> unsigned long cp0_epc;
> unsigned long cp0_ema;
> unsigned long cp0_psr;
> unsigned long cp0_ecr;
> unsigned long cp0_condition;
> #ifdef __KERNEL__
> unsigned long orig_r4;
> unsigned long orig_r7;
> long is_syscall;
> unsigned long pad0[3];
> #else
> unsigned long pad0[6];
> #endif
> };
>
unsigned long pad0[6];
was place at the start of pt_regs use
to hold the arguments from userland.
caller(exception handler) not need to
change stack pointer.
unsigned long orig_r4;
unsigned long orig_r7;
move to end of the pt_regs haven't
problem.
Thanks,
Liqin
Powered by blists - more mailing lists