--- a/net/sched/sch_generic.c +++ b/net/sched/sch_generic.c @@ -84,6 +84,11 @@ int qdisc_restart(struct net_device *dev struct sk_buff *skb; /* Dequeue packet */ + if (!q) { + if (net_ratelimit()) + printk(KERN_DEBUG "HELP ME! qdisc_restart called, but no Qdisc!\n"); + return 0; + } if ((skb = q->dequeue(q)) != NULL) { if (spin_trylock(&dev->xmit_lock)) { /* Remember that the driver is grabbed by us. */