RE: mdelay causes BUG, please use udelay

Martin J. Bligh (Martin.Bligh@us.ibm.com)
Wed, 21 Aug 2002 09:04:01 -0700


>> - msec_delay(10);
>> + usec_delay(10000);
>
> Jeff, 10000 seems on the border of what's OK. If it's acceptable,
> then let's go for that. Otherwise, we're going to have to chain
> several mod_timer callbacks together to do a controller reset.

Whilst this sort of delay in interrupt context is undoubtedly bad
any way we do it, I'd question the context a little more before we
make a decision. This is called from e1000_reset_hw - are we likely
to ever actually call this except under initialisation? If we just
do it once on system boot, I'd say evil hacks (like this) are
acceptable. If we're going to do this under load, it definitely
needs fixing.

FWIW, this is heavily tested under Apache webserver load on a maxed
out 8 CPU system with at least 4 (8?) gigabit ethernet cards. Whilst
undoubtedly ugly, it's better than what we have now, so might I
suggest that we do this for now until a real fix is forthcoming if
we decide it's needed?

Martin.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/