Messages in this thread |  | | Subject | Re: wavelan has fatal error with 2.4.0 (but worked in 2.4.0-test12) | Date | Tue, 9 Jan 2001 17:48:47 +0000 (GMT) | From | Alan Cox <> |
| |
> > It is a bug in the driver. > > Please check again the code and point me the invalid > udelay(). You will realise that there is no delay in the driver that > is longer than 100ms.
The udelay limit is set a lot lower than 100mS. It has to be somewhat lower otherwise you have to do two levels of loops which will throw small udelay timings a fair whack.
> The bug is that udelay() can't be passed a variable but only a > constant. Therefore bug in udelay().
Sounds like a compiler bug.
#define udelay(n) (__builtin_constant_p(n) ? \ ((n) > 20000 ? __bad_udelay() : __const_udelay((n) * 0x10c6ul)) : \ __udelay(n))
non constants are covered.
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org Please read the FAQ at http://www.tux.org/lkml/
|  |