Commit 58de3fc6 authored by K. Y. Srinivasan's avatar K. Y. Srinivasan Committed by Greg Kroah-Hartman
Browse files

Staging: hv: Get rid of the indirection in invoking rndis_filter_device_remove()

parent ce5bf661
Loading
Loading
Loading
Loading
+2 −9
Original line number Diff line number Diff line
@@ -342,8 +342,6 @@ static void netvsc_send_garp(struct work_struct *w)

static int netvsc_probe(struct hv_device *dev)
{
	struct netvsc_driver *net_drv_obj =
		drv_to_netvscdrv(dev->device.driver);
	struct net_device *net = NULL;
	struct net_device_context *net_device_ctx;
	struct netvsc_device_info device_info;
@@ -398,7 +396,7 @@ static int netvsc_probe(struct hv_device *dev)
	ret = register_netdev(net);
	if (ret != 0) {
		/* Remove the device and release the resource */
		net_drv_obj->base.dev_rm(dev);
		rndis_filter_device_remove(dev);
		free_netdev(net);
	}

@@ -407,8 +405,6 @@ static int netvsc_probe(struct hv_device *dev)

static int netvsc_remove(struct hv_device *dev)
{
	struct netvsc_driver *net_drv_obj =
		drv_to_netvscdrv(dev->device.driver);
	struct net_device *net = dev_get_drvdata(&dev->device);
	int ret;

@@ -417,9 +413,6 @@ static int netvsc_remove(struct hv_device *dev)
		return 0;
	}

	if (!net_drv_obj->base.dev_rm)
		return -1;

	/* Stop outbound asap */
	netif_stop_queue(net);
	/* netif_carrier_off(net); */
@@ -430,7 +423,7 @@ static int netvsc_remove(struct hv_device *dev)
	 * Call to the vsc driver to let it know that the device is being
	 * removed
	 */
	ret = net_drv_obj->base.dev_rm(dev);
	ret = rndis_filter_device_remove(dev);
	if (ret != 0) {
		/* TODO: */
		netdev_err(net, "unable to remove vsc device (ret %d)\n", ret);