Messages in this thread | | | Subject | Re: [CRASH] in tulip driver? | From | Jussi Laako <> | Date | 11 Jul 2002 23:38:39 +0300 |
| |
On Thu, 2002-07-11 at 06:34, Andrew Morton wrote: > > whoops. I think the "-ll" means low-latency. But the only > finger I have in that pie is: > > --- 2.4.19-pre6/drivers/char/random.c~low-latency Fri Apr 5 12:11:17 2002 > +++ 2.4.19-pre6-akpm/drivers/char/random.c Fri Apr 5 12:11:17 2002 > @@ -1369,6 +1369,11 @@ static ssize_t extract_entropy(struct en > buf += i; > ret += i; > add_timer_randomness(&extract_timer_state, nbytes); > +#if LOWLATENCY_NEEDED > + /* This can happen in softirq's, but that's what we want */ > + if (conditional_schedule_needed()) > + break; > +#endif > } > > /* Wipe data just returned from memory */ > > So it's a bit of a mystery. It seems to think that it has > EXTRACT_ENTROPY_USER.
Whoops, thanks, I found the bug. My fault...
That "break;" breaks some (apparently broken) programs that don't expect read of /dev/urandom to return early. For security resons (to get identical behaviour compared to the original kernel) I made a fix that someone proposed. That fix is apparently broken on some rare situations which seem to be difficult to trigger (requires high overall irq rates with network load). Now I'm going to remove that part completely and see what happens next...
- Jussi Laako
[unhandled content-type:application/pgp-signature] | |