net/hyperv: Correct the assignment in netvsc_recv_callback()
authorHaiyang Zhang <haiyangz@microsoft.com>
Sun, 5 Feb 2012 12:13:09 +0000 (12:13 +0000)
committerDavid S. Miller <davem@davemloft.net>
Sun, 5 Feb 2012 22:44:55 +0000 (17:44 -0500)
The first assignment to variable "net" is wrong, but overridden by the
latter assignments. So the bug isn't manifested.

Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com>
Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/hyperv/netvsc_drv.c

index 466c58a7353dba30e89d8986c58e7cf7550b7670..0ae7a1a6aeb0a95b456ffad376fe0af78db46f90 100644 (file)
@@ -267,13 +267,10 @@ void netvsc_linkstatus_callback(struct hv_device *device_obj,
 int netvsc_recv_callback(struct hv_device *device_obj,
                                struct hv_netvsc_packet *packet)
 {
-       struct net_device *net = dev_get_drvdata(&device_obj->device);
+       struct net_device *net;
        struct sk_buff *skb;
-       struct netvsc_device *net_device;
-
-       net_device = hv_get_drvdata(device_obj);
-       net = net_device->ndev;
 
+       net = ((struct netvsc_device *)hv_get_drvdata(device_obj))->ndev;
        if (!net) {
                netdev_err(net, "got receive callback but net device"
                        " not initialized yet\n");