Messages in this thread |  | | From | "A.N.Kuznetsov" <> | Subject | Re: kerneld/request-route interaction bug with kernel patch | Date | Mon, 1 Jul 1996 21:40:31 +0400 (MSD) |
| |
Hello!
> If this is a problem with my patch isn't it a problem for the current > implementation as well? 2.0.0 still calls kerneld_route. > > Or is it a problem with *where* kerneld is being called?
It is problem of current implementation, your patch just revealed that kerneld_route sleeps. ip_rt_route is called from many places, and it was assumed that it does not sleep. It is my fault, I did not notice it (fib_lookup did not wait for result of kerneld_route, and I imagined that it calls kerneld_send with KERNELD_NOWAIT not looking into kerneld.h)
The second problem is that kerneld_send is intrinsically not reenterant, so that it is not allowed to be called from interrupt. The probability of crash is pretty small, but not zero...
Alexey Kuznetsov.
|  |