[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CA+ekxPXusRYL2JobbJTBk1bSWm0WUyuRd5k6dW17F4yG8GCRxA@mail.gmail.com>
Date: Thu, 28 Jan 2016 13:22:19 -0700
From: Jeffrey Merkey <jeffmerkey@...il.com>
To: "H. Peter Anvin" <hpa@...or.com>
Cc: linux-kernel@...r.kernel.org, tglx@...utronix.de, mingo@...hat.com,
x86@...nel.org, akpm@...ux-foundation.org, linux.mdb@...il.com,
dzickus@...hat.com, dyoung@...hat.com, mnfhuang@...il.com
Subject: Re: [PATCH 02/31] Add debugger entry points for X86
On 1/28/16, H. Peter Anvin <hpa@...or.com> wrote:
> On 01/28/16 11:46, Jeffrey Merkey wrote:
>> This patch series adds an export which can be set by system debuggers to
>> direct the hard lockup and soft lockup detector to trigger a breakpoint
>> exception and enter a debugger if one is active. It is assumed that if
>> someone sets this variable, then an breakpoint handler of some sort will
>> be actively loaded or registered via the notify die handler chain.
>>
>> This addition is extremely useful for debugging hard and soft lockups
>> real time and quickly from a console debugger.
>>
>> Signed-off-by: Jeffrey Merkey <jeffmerkey@...il.com>
>> ---
>> arch/x86/include/asm/kdebug.h | 5 +++++
>> 1 file changed, 5 insertions(+)
>>
>> diff --git a/arch/x86/include/asm/kdebug.h
>> b/arch/x86/include/asm/kdebug.h
>> index e5f5dc9..cbe9004 100644
>> --- a/arch/x86/include/asm/kdebug.h
>> +++ b/arch/x86/include/asm/kdebug.h
>> @@ -3,6 +3,11 @@
>>
>> #include <linux/notifier.h>
>>
>> +static inline void arch_breakpoint(void)
>> +{
>> + asm(" int $3");
>> +}
>> +
>> struct pt_regs;
>>
>
> Even though apparently gas changed "int $3" to "int3" the latter is
> actually a different instruction (with subtly different behavior) and
> this may very well be corrected in gas at a future date.
>
> So please encode this as "int3". It should also be "asm volatile" since
> it has side effects unbeknownst to the compiler.
>
> -hpa
>
>
Yes sir, I'll add that to the to do list and resubmit after I get all
the comments back for all the changes. It may be important to note
that the arch_kgdb_breakpoint also uses this same syntax and needs
also to be fixed.
Jeff
Powered by blists - more mailing lists