diff --git a/drivers/staging/hv/rndis_filter.c b/drivers/staging/hv/rndis_filter.c
index ef43f2e95f34..bafccb360041 100644
--- a/drivers/staging/hv/rndis_filter.c
+++ b/drivers/staging/hv/rndis_filter.c
@@ -368,11 +368,11 @@ int rndis_filter_receive(struct hv_device *dev,
 	struct rndis_message *rndis_hdr;
 	struct net_device *ndev;
 
-	ndev = net_dev->ndev;
-
 	if (!net_dev)
 		return -EINVAL;
 
+	ndev = net_dev->ndev;
+
 	/* Make sure the rndis device state is initialized */
 	if (!net_dev->extension) {
 		netdev_err(ndev, "got rndis message but no rndis device - "