DragonFly bugs List (threaded) for 2007-10
DragonFly BSD
DragonFly bugs List (threaded) for 2007-10
[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]

Re: kernel panic when initializing dummynet


From: "Sepherosa Ziehau" <sepherosa@xxxxxxxxx>
Date: Tue, 23 Oct 2007 23:04:52 +0800

On 10/23/07, Nicolas Thery <nthery@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



[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]