[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20090131003921.GA13709@elte.hu>
Date: Sat, 31 Jan 2009 01:39:21 +0100
From: Ingo Molnar <mingo@...e.hu>
To: "H. Peter Anvin" <hpa@...or.com>
Cc: Martin Hicks <mort@....com>, tglx@...utronix.de, mingo@...hat.com,
heukelum@...lshack.com, linux-kernel <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH] x86: push old stack address on irqstack for unwinder
* H. Peter Anvin <hpa@...or.com> wrote:
> H. Peter Anvin wrote:
>> Martin Hicks wrote:
>>> Hi,
>>>
>>> KDB was using this information. Could this be pushed towards 2.6.29
>>> please?
>>>
>>> This re-adds the old stack pointer to the top of the irqstack to help
>>> with unwinding. It was removed in commit
>>> d99015b1abbad743aa049b439c1e1dede6d0fa49
>>> as part of the save_args out-of-line work.
>>>
>>
>> This bothers me... why should we add even a single instruction to what
>> is arguably the single hottest path in the kernel to support an
>> out-of-tree debugger, especially if kgdb (which is in-tree) doesn't
>> need it?
>>
>> What does kgdb do differently (or is kgdb broken too)?
>>
>
> Thinking about it some more, I think this makes sense under
>
> #ifdef CONFIG_FRAME_POINTER
>
> ... since if we're not building with frame pointers, this is pretty
> pointless, and if we are, we're adding these all over the place anyway.
>
> Does this work for you? Let me know and I'll get it in if so.
Would be nice to have an #ifdef-less primitive for this - something like:
pushq_frame %rbp
and a matching:
popq_frame %rbp
for those cases that need it (this one doesnt as we dont pop out of the
stack).
Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists