Re: kerneld/multicast bug (tickled by gated)

Trevor Johnson (trevor@jpj.net)
Sun, 15 Jun 1997 07:46:06 -0700 (PDT)


> In running gated on this network, we have discovered a Linux kernel/kerneld
> bug, and I wonder if anyone on this list might be able to shed some light on
> it (or even propose a fix)
>
> The symptoms are as follows:
>
> 1. gated sometimes hangs.
>
> 2. When it is in the hung state, it can still be made to dump core
> ('gdc COREDUMP'), and gdb shows that it was waiting in setsockopt() for
> an IP_ADD_MEMBERSHIP request.
>
> 3. At the same time as gated hangs, an extra process is in the kernel table:
> request-route <zombie>
> which is a child of kerneld

The request-route script distributed with the modutils package starts pppd
when a request is made for a connection to an IP address to which no route
has been established. This way, one's ISP can be automatically dialed
when one runs a program that uses TCP/IP.

My limited understanding of gated is that it's a routing daemon similar to
routed. It seems that while it's manipulating the routing table,
something (perhaps gated itself) is trying to make connections through
routes that don't exist. I assume you don't want to run pppd, so maybe
just removing everything but "#!/bin/sh" from the request-route script
would cause it to return, so gated can continue.

>From the README.ppp-slip file distributed with kerneld:

The patch to "linux/net/inet/route.c" will make a kerneld request for
the action KERNELD_REQUEST_ROUTE if no suitable route has been found.
This will make kerneld start the utility "/sbin/request-route" with
the requested route as a parameter (in aaa.bbb.ccc.ddd notation).
___
Trevor Johnson