Re: [patch 1/2] i386: add CFI macros for stack manipulation

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



In-Reply-To: <[email protected]>

On Fri, 28 Jul 2006 20:36:45 +0200, Andi Kleen wrote:
> 
> On Friday 28 July 2006 19:50, Chuck Ebbert wrote:
> > Add macros to dwarf2.h to simplify pushing and popping stack
> > variables.
> 
> I feared someone would do that patch. I've thought about it myself.
> 
> However it's not a good idea. I've already had complaints that some code in 
> x86-64 is too hard to read/debug because it uses too many macros. I think 
> it's better  if the core core still uses "real" instructions and keep the 
> CFI_* stuff as annotation that most people can just ignore.

I did this because it should prevent:

| Date: Thu, 27 Jul 2006 07:45:35 +0200
| From: Markus Armbruster <[email protected]>
| Subject: [PATCH] Fix trivial unwind info bug
| To: [email protected]
| Message-ID: <[email protected]>
| Content-Type: text/plain; charset=us-ascii
| 
| CFA needs to be adjusted upwards for push, and downwards for pop.
| arch/i386/kernel/entry.S gets it wrong in one place.
| 
| Signed-off-by: Markus Armbruster <[email protected]>
| 
| 
| diff --git a/arch/i386/kernel/entry.S b/arch/i386/kernel/entry.S
| index d9a260f..37a7d2e 100644
| --- a/arch/i386/kernel/entry.S
| +++ b/arch/i386/kernel/entry.S
| @@ -204,7 +204,7 @@ #define RING0_PTREGS_FRAME \
|  ENTRY(ret_from_fork)
|         CFI_STARTPROC
|         pushl %eax
| -       CFI_ADJUST_CFA_OFFSET -4
| +       CFI_ADJUST_CFA_OFFSET 4
|         call schedule_tail
|         GET_THREAD_INFO(%ebp)
|         popl %eax

Otherwise I was just going to indent the annotations an additional
tabstop to move them out of the way.  (They really annoy me.)

-- 
Chuck

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux