Staging: hv: mousevsc: Get rid of mousevsc_on_device_remove() by inlining code

Get rid of mousevsc_on_device_remove() by inlining code.

Signed-off-by: K. Y. Srinivasan <kys@microsoft.com>
Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
K. Y. Srinivasan 2011-09-29 11:54:57 -07:00 committed by Greg Kroah-Hartman
parent 8660e38fab
commit 8ec31f9385

View File

@ -660,33 +660,6 @@ static int mousevsc_on_device_add(struct hv_device *device,
return ret;
}
static int mousevsc_on_device_remove(struct hv_device *device)
{
struct mousevsc_dev *input_dev;
int ret = 0;
input_dev = release_input_device(device);
/*
* At this point, all outbound traffic should be disable. We only
* allow inbound traffic (responses) to proceed
*
* so that outstanding requests can be completed.
*/
input_dev = final_release_input_device(device);
/* Close the channel */
vmbus_close(device->channel);
free_input_device(input_dev);
return ret;
}
static int mousevsc_probe(struct hv_device *dev,
const struct hv_vmbus_device_id *dev_id)
{
@ -706,11 +679,25 @@ static int mousevsc_remove(struct hv_device *dev)
hid_destroy_device(input_dev->hid_device);
}
release_input_device(dev);
/*
* Call to the vsc driver to let it know that the device
* is being removed
* At this point, all outbound traffic should be disable. We only
* allow inbound traffic (responses) to proceed
*
* so that outstanding requests can be completed.
*/
return mousevsc_on_device_remove(dev);
input_dev = final_release_input_device(dev);
/* Close the channel */
vmbus_close(dev->channel);
free_input_device(input_dev);
return 0;
}
static const struct hv_vmbus_device_id id_table[] = {