ntb_netdev_tx_handler() calls netdev_priv(ndev) before checking whether ndev is NULL. Although qp_data is expected to always be valid in normal operation, dereferencing the pointer before the NULL check is logically incorrect. Move netdev_priv() after validating ndev. No functional change intended. Signed-off-by: Alok Tiwari --- drivers/net/ntb_netdev.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/net/ntb_netdev.c b/drivers/net/ntb_netdev.c index fbeae05817e9..6792b3b1f253 100644 --- a/drivers/net/ntb_netdev.c +++ b/drivers/net/ntb_netdev.c @@ -177,13 +177,15 @@ static void ntb_netdev_tx_handler(struct ntb_transport_qp *qp, void *qp_data, void *data, int len) { struct net_device *ndev = qp_data; + struct ntb_netdev *dev; struct sk_buff *skb; - struct ntb_netdev *dev = netdev_priv(ndev); skb = data; if (!skb || !ndev) return; + dev = netdev_priv(ndev); + if (len > 0) { ndev->stats.tx_packets++; ndev->stats.tx_bytes += skb->len; -- 2.50.1