lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:	Thu, 29 Jul 2010 04:55:11 +0200
From:	Frederic Weisbecker <fweisbec@...il.com>
To:	DDD <dongdong.deng@...driver.com>
Cc:	Jason Wessel <jason.wessel@...driver.com>,
	kgdb-bugreport@...ts.sourceforge.net,
	Linus Torvalds <torvalds@...ux-foundation.org>,
	linux-kernel@...r.kernel.org
Subject: Re: [Kgdb-bugreport] [GIT PULL] kgdb regression fixes for
	2.6.35-rc5

On Thu, Jul 29, 2010 at 10:49:50AM +0800, DDD wrote:
> Frederic Weisbecker wrote:
>> On Wed, Jul 28, 2010 at 07:14:42PM -0500, Jason Wessel wrote:
>>> On 07/28/2010 04:26 PM, Linus Torvalds wrote:
>>>> On Wed, Jul 28, 2010 at 2:17 PM, Frederic Weisbecker <fweisbec@...il.com> wrote:
>>>>> I'm sorry I spot it a bit late.
>>>>> There is a little issue in this patch, irqs won't
>>>>> be restored:
>>>>>
>>>>> @@ -588,9 +588,10 @@ int kgdb_ll_trap(int cmd, const char *str,
>>>>>        if (!kgdb_io_module_registered)
>>>>>                return NOTIFY_DONE;
>>>>>
>>>>> +       local_irq_save(flags);
>>>>>        return __kgdb_notify(&args, cmd);
>>>>> +       local_irq_restore(flags);
>>>>>  }
>>>> Yeah, that's obviously crap. I also wonder why __kgdb_notify messes up
>>>> the flags to begin with.
>>>>
>>> This should not be needed as the irqs should already be off while in the overflow handler.
>>
>>
>>
>> Interrupts are not disabled in the debug exception handler.
>
> Hi Frederic,
>
> The debug was initialized as an intr gate, thus the interrupts have been  
> disabled in the debug exception handler. :-)



Ah ok. Thanks for the correction :)




> arch/x86/kernel/traps.c:
> 820 /* Set of traps needed for early debugging. */
> 821 void __init early_trap_init(void)
> 822 {
> 823     set_intr_gate_ist(1, &debug, DEBUG_STACK);
> 824     /* int3 can be called from all */
> 825     set_system_intr_gate_ist(3, &int3, DEBUG_STACK);
> 826     set_intr_gate(14, &page_fault);
> 827     load_idt(&idt_descr);
> 828 }
>
> Thanks,
> Dongdong

--
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