[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <458941D1.7070301@gmail.com>
Date: Wed, 20 Dec 2006 14:59:45 +0100
From: Jiri Slaby <jirislaby@...il.com>
To: Arjan van de Ven <arjan@...radead.org>
CC: Linux kernel mailing list <linux-kernel@...r.kernel.org>
Subject: Re: locking issue (hardirq+softirq+user)
Arjan van de Ven wrote:
> On Wed, 2006-12-20 at 14:35 +0100, Jiri Slaby wrote:
>> Hi!
>>
>> an user still gets NMI watchdog warning, that the machine deadlocked.
>
> have you tried enabling LOCKDEP ?
No, only PROVE_LOCKING, I apply him to turn this on too.
>> isr() /* i.e. hardirq context */
>> {
>> spin_lock(&lock);
>> ...
>> spin_unlock(&lock);
>> }
>
> this is ok if you are 100% sure that this never gets called in any other
> way
It holds. Only in request_irq isr function name occurs.
>> timer() /* i.e. softirq context */
>> {
>> unsigned int f;
>> spin_lock_irqsave(&lock, f) /* stack shows, that it locks here */
>
> this is a bug, the flags are an "unsigned long" not "unsigned int"!
> It may do really bad stuff!
Aah, sorry, I misread the code, I saw flags, but it was port->flags;
board->flags, which is used in irq{save,restore} functions, is ulong.
thanks for the quick reply,
--
http://www.fi.muni.cz/~xslaby/ Jiri Slaby
faculty of informatics, masaryk university, brno, cz
e-mail: jirislaby gmail com, gpg pubkey fingerprint:
B674 9967 0407 CE62 ACC8 22A0 32CC 55C3 39D4 7A7E
-
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