[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20171114.161654.18613173584810547.davem@davemloft.net>
Date: Tue, 14 Nov 2017 16:16:54 +0900 (KST)
From: David Miller <davem@...emloft.net>
To: yanjun.zhu@...cle.com
Cc: ariel.elior@...ium.com, everest-linux-l2@...ium.com,
netdev@...r.kernel.org
Subject: Re: [PATCHv3 1/1] bnx2x: fix slowpath null crash
From: Zhu Yanjun <yanjun.zhu@...cle.com>
Date: Sat, 11 Nov 2017 10:42:03 -0500
> When "NETDEV WATCHDOG: em4 (bnx2x): transmit queue 2 timed out" occurs,
> BNX2X_SP_RTNL_TX_TIMEOUT is set. In the function bnx2x_sp_rtnl_task,
> bnx2x_nic_unload and bnx2x_nic_load are executed to shutdown and open
> NIC. In the function bnx2x_nic_load, bnx2x_alloc_mem allocates dma
> failure. The message "bnx2x: [bnx2x_alloc_mem:8399(em4)]Can't
> allocate memory" pops out. The variable slowpath is set to NULL.
> When shutdown the NIC, the function bnx2x_nic_unload is called. In
> the function bnx2x_nic_unload, the following functions are executed.
> bnx2x_chip_cleanup
> bnx2x_set_storm_rx_mode
> bnx2x_set_q_rx_mode
> bnx2x_set_q_rx_mode
> bnx2x_config_rx_mode
> bnx2x_set_rx_mode_e2
> In the function bnx2x_set_rx_mode_e2, the variable slowpath is operated.
> Then the crash occurs.
> To fix this crash, the variable slowpath is checked. And in the function
> bnx2x_sp_rtnl_task, after dma memory allocation fails, another shutdown
> and open NIC is executed.
>
> CC: Joe Jin <joe.jin@...cle.com>
> CC: Junxiao Bi <junxiao.bi@...cle.com>
> Signed-off-by: Zhu Yanjun <yanjun.zhu@...cle.com>
> Acked-by: Ariel Elior <aelior@...ium.com>
Applied.
Powered by blists - more mailing lists