kernel panic when initializing dummynet

Sepherosa Ziehau sepherosa at gmail.com
Tue Oct 23 08:08:15 PDT 2007


On 10/23/07, Nicolas Thery <nthery at gmail.com> wrote:
> The default VKERNEL cfg on HEAD crashes at boot-time while
> initializing dummynet (NULL ptr dereference).
>
> The call sequence is:
>
> dummynet_modevent() -> ip_dn_init() -> lwkt_domsg() -> lwkt_beginmsg().
>
> port->mp_waitport is dereferenced in the latter function but is
> NULLthus causing a crash.  port points to netisr_cpu[0].td_msgport.
>
> The problem is that dummynet is initialized at priority SI_SUB_PSEUDO
> but netisr is initialized at priority SI_SUB_PROTO_BEGIN and
> SI_SUB_PSEUDO < SI_SUB_PROTO_BEGIN.  netisr_cpu is therefore not yet
> initalized when dummynet runs.
>
> I changed dummynet priority (I'm not sure what priority should be
> used).  This fixes the problem.

Committed a little different version, I chose to use SI_SUB_PROTO_END.
 Thank you for the submission!  Sorry for the trouble I introduced, I
had only tested module version of previous dummynet changes (since
module unloading is a critical test point in my previous changes :)

Best Regards,
sephe

-- 
Live Free or Die





More information about the Bugs mailing list