Thread (20 messages) flat view 20 messages, 4 authors, 2012-09-17

Re: NULL deref in bnx2 / crashes ? ( was: netconsole leads to stalled CPU task )

From: Lin Ming <hidden>
Date: 2012-08-25 02:21:24

On Wed, Aug 22, 2012 at 10:29 PM, Sylvain Munaut
[off-list ref] wrote:
Hi,
quoted
my patch was incomplete, sorry :
diff --git a/net/core/netpoll.c b/net/core/netpoll.c
index 346b1eb..ddc453b 100644
--- a/net/core/netpoll.c
+++ b/net/core/netpoll.c
@@ -335,8 +335,13 @@ void netpoll_send_skb_on_dev(struct netpoll *np, struct sk_buff *skb,
        /* don't get messages out of order, and no recursion */
        if (skb_queue_len(&npinfo->txq) == 0 && !netpoll_owner_active(dev)) {
                struct netdev_queue *txq;
+               int queue_index = skb_get_queue_mapping(skb);

-               txq = netdev_get_tx_queue(dev, skb_get_queue_mapping(skb));
+               if (queue_index >= dev->real_num_tx_queues) {
+                       queue_index = 0;
+                       skb_set_queue_mapping(skb, 0);
+               }
+               txq = netdev_get_tx_queue(dev, queue_index);

                /* try until next clock tick */
                for (tries = jiffies_to_usecs(1)/USEC_PER_POLL;
Ok, I tried this.

The machine with the intel card still hard freeze (no output / no nothing ...)
Did you enable hard lockup detector?

CONFIG_LOCKUP_DETECTOR=y
CONFIG_HARDLOCKUP_DETECTOR=y
The machine with the bnx2 don't crash anymore and no NULL deref, but
the modprobe still hangs and I get this every 180 sec or so :
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help