Re: [PATCH net-next] net: ntb_netdev: Fix NULL check ordering in TX handler

Dave Jiang <[email protected]> Tue, 24 Feb 2026 07:42:18 -0700
Newsgroups dev.linux.lists.ntb,org.kernel.vger.netdev
Message-ID <[email protected]>

On 2/24/26 6:04 AM, Alok Tiwari wrote:
> 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 <[email protected]>

Acked-by: Dave Jiang <[email protected]>

> ---
>  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;