[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <87prmowsxx.fsf@denkblock.local>
Date: Sun, 28 Sep 2008 10:55:22 +0200
From: Elias Oltmanns <eo@...ensachen.de>
To: Thomas Gleixner <tglx@...utronix.de>
Cc: Ingo Molnar <mingo@...e.hu>, linux-kernel@...r.kernel.org
Subject: Re: udelay and timers
[Apologies for the delayed response, I have just temporary internet
access right now.]
Thomas Gleixner <tglx@...utronix.de> wrote:
> On Fri, 26 Sep 2008, Elias Oltmanns wrote:
>
>> Hi all,
>>
>> finally, I have managed to identify the cause of some odd symptoms on my
>> system, but I need your help to understand what is really going on and
>> what should be done to fix things. My problem is this: I have written a
>> small test module which, in due course, does the following:
[...]
>> Now, I can observe that because of the call to udelay() in the callback
>> of timera, timerb rather frequently fires *much* too early, i.e. after
>> less than 1 msec rather than 20 msecs. This means that an udelay in a
>> timer callback heavily affects the precision of other timers running at
>> the time. The effect if particularly grave on a tickless system, but
>> even when NO_HZ was not set, I have observed this behaviour.
>>
>> As I understand, udelay() is meant to be usable in softirq context. What
>> can I do to find out what exactly causes the problem?
>
> I have no idea what's going wrong. Can you please provide the full
> source of your test module ?
Even though I still don't understand exactly what is going on myself, I
have, after some more testing, come to the conclusion that the ath5k
driver is to blame for messing up softirq handling. I have to talk to
the wireless people in order to get this sorted out. Sorry for the
noise.
Regards,
Elias
--
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