Commit 96ec2939 authored by Dawei Li's avatar Dawei Li Committed by Wei Liu

Drivers: hv: Make remove callback of hyperv driver void returned

Since commit fc7a6209 ("bus: Make remove callback return
void") forces bus_type::remove be void-returned, it doesn't
make much sense for any bus based driver implementing remove
callbalk to return non-void to its caller.

As such, change the remove function for Hyper-V VMBus based
drivers to return void.
Signed-off-by: default avatarDawei Li <set_pte_at@outlook.com>
Link: https://lore.kernel.org/r/TYCP286MB2323A93C55526E4DF239D3ACCAFA9@TYCP286MB2323.JPNP286.PROD.OUTLOOK.COMSigned-off-by: default avatarWei Liu <wei.liu@kernel.org>
parent 8536290f
...@@ -165,7 +165,7 @@ static int hyperv_vmbus_probe(struct hv_device *hdev, ...@@ -165,7 +165,7 @@ static int hyperv_vmbus_probe(struct hv_device *hdev,
return ret; return ret;
} }
static int hyperv_vmbus_remove(struct hv_device *hdev) static void hyperv_vmbus_remove(struct hv_device *hdev)
{ {
struct drm_device *dev = hv_get_drvdata(hdev); struct drm_device *dev = hv_get_drvdata(hdev);
struct hyperv_drm_device *hv = to_hv(dev); struct hyperv_drm_device *hv = to_hv(dev);
...@@ -176,8 +176,6 @@ static int hyperv_vmbus_remove(struct hv_device *hdev) ...@@ -176,8 +176,6 @@ static int hyperv_vmbus_remove(struct hv_device *hdev)
hv_set_drvdata(hdev, NULL); hv_set_drvdata(hdev, NULL);
vmbus_free_mmio(hv->mem->start, hv->fb_size); vmbus_free_mmio(hv->mem->start, hv->fb_size);
return 0;
} }
static int hyperv_vmbus_suspend(struct hv_device *hdev) static int hyperv_vmbus_suspend(struct hv_device *hdev)
......
...@@ -524,7 +524,7 @@ static int mousevsc_probe(struct hv_device *device, ...@@ -524,7 +524,7 @@ static int mousevsc_probe(struct hv_device *device,
} }
static int mousevsc_remove(struct hv_device *dev) static void mousevsc_remove(struct hv_device *dev)
{ {
struct mousevsc_dev *input_dev = hv_get_drvdata(dev); struct mousevsc_dev *input_dev = hv_get_drvdata(dev);
...@@ -533,8 +533,6 @@ static int mousevsc_remove(struct hv_device *dev) ...@@ -533,8 +533,6 @@ static int mousevsc_remove(struct hv_device *dev)
hid_hw_stop(input_dev->hid_device); hid_hw_stop(input_dev->hid_device);
hid_destroy_device(input_dev->hid_device); hid_destroy_device(input_dev->hid_device);
mousevsc_free_device(input_dev); mousevsc_free_device(input_dev);
return 0;
} }
static int mousevsc_suspend(struct hv_device *dev) static int mousevsc_suspend(struct hv_device *dev)
......
...@@ -2042,7 +2042,7 @@ static int balloon_probe(struct hv_device *dev, ...@@ -2042,7 +2042,7 @@ static int balloon_probe(struct hv_device *dev,
return ret; return ret;
} }
static int balloon_remove(struct hv_device *dev) static void balloon_remove(struct hv_device *dev)
{ {
struct hv_dynmem_device *dm = hv_get_drvdata(dev); struct hv_dynmem_device *dm = hv_get_drvdata(dev);
struct hv_hotadd_state *has, *tmp; struct hv_hotadd_state *has, *tmp;
...@@ -2083,8 +2083,6 @@ static int balloon_remove(struct hv_device *dev) ...@@ -2083,8 +2083,6 @@ static int balloon_remove(struct hv_device *dev)
kfree(has); kfree(has);
} }
spin_unlock_irqrestore(&dm_device.ha_lock, flags); spin_unlock_irqrestore(&dm_device.ha_lock, flags);
return 0;
} }
static int balloon_suspend(struct hv_device *hv_dev) static int balloon_suspend(struct hv_device *hv_dev)
......
...@@ -602,7 +602,7 @@ static int util_probe(struct hv_device *dev, ...@@ -602,7 +602,7 @@ static int util_probe(struct hv_device *dev,
return ret; return ret;
} }
static int util_remove(struct hv_device *dev) static void util_remove(struct hv_device *dev)
{ {
struct hv_util_service *srv = hv_get_drvdata(dev); struct hv_util_service *srv = hv_get_drvdata(dev);
...@@ -610,8 +610,6 @@ static int util_remove(struct hv_device *dev) ...@@ -610,8 +610,6 @@ static int util_remove(struct hv_device *dev)
srv->util_deinit(); srv->util_deinit();
vmbus_close(dev->channel); vmbus_close(dev->channel);
kfree(srv->recv_buffer); kfree(srv->recv_buffer);
return 0;
} }
/* /*
......
...@@ -369,7 +369,7 @@ static int hv_kbd_probe(struct hv_device *hv_dev, ...@@ -369,7 +369,7 @@ static int hv_kbd_probe(struct hv_device *hv_dev,
return error; return error;
} }
static int hv_kbd_remove(struct hv_device *hv_dev) static void hv_kbd_remove(struct hv_device *hv_dev)
{ {
struct hv_kbd_dev *kbd_dev = hv_get_drvdata(hv_dev); struct hv_kbd_dev *kbd_dev = hv_get_drvdata(hv_dev);
...@@ -378,8 +378,6 @@ static int hv_kbd_remove(struct hv_device *hv_dev) ...@@ -378,8 +378,6 @@ static int hv_kbd_remove(struct hv_device *hv_dev)
kfree(kbd_dev); kfree(kbd_dev);
hv_set_drvdata(hv_dev, NULL); hv_set_drvdata(hv_dev, NULL);
return 0;
} }
static int hv_kbd_suspend(struct hv_device *hv_dev) static int hv_kbd_suspend(struct hv_device *hv_dev)
......
...@@ -2594,7 +2594,7 @@ static int netvsc_probe(struct hv_device *dev, ...@@ -2594,7 +2594,7 @@ static int netvsc_probe(struct hv_device *dev,
return ret; return ret;
} }
static int netvsc_remove(struct hv_device *dev) static void netvsc_remove(struct hv_device *dev)
{ {
struct net_device_context *ndev_ctx; struct net_device_context *ndev_ctx;
struct net_device *vf_netdev, *net; struct net_device *vf_netdev, *net;
...@@ -2603,7 +2603,7 @@ static int netvsc_remove(struct hv_device *dev) ...@@ -2603,7 +2603,7 @@ static int netvsc_remove(struct hv_device *dev)
net = hv_get_drvdata(dev); net = hv_get_drvdata(dev);
if (net == NULL) { if (net == NULL) {
dev_err(&dev->device, "No net device to remove\n"); dev_err(&dev->device, "No net device to remove\n");
return 0; return;
} }
ndev_ctx = netdev_priv(net); ndev_ctx = netdev_priv(net);
...@@ -2637,7 +2637,6 @@ static int netvsc_remove(struct hv_device *dev) ...@@ -2637,7 +2637,6 @@ static int netvsc_remove(struct hv_device *dev)
free_percpu(ndev_ctx->vf_stats); free_percpu(ndev_ctx->vf_stats);
free_netdev(net); free_netdev(net);
return 0;
} }
static int netvsc_suspend(struct hv_device *dev) static int netvsc_suspend(struct hv_device *dev)
......
...@@ -3800,13 +3800,10 @@ static int hv_pci_bus_exit(struct hv_device *hdev, bool keep_devs) ...@@ -3800,13 +3800,10 @@ static int hv_pci_bus_exit(struct hv_device *hdev, bool keep_devs)
/** /**
* hv_pci_remove() - Remove routine for this VMBus channel * hv_pci_remove() - Remove routine for this VMBus channel
* @hdev: VMBus's tracking struct for this root PCI bus * @hdev: VMBus's tracking struct for this root PCI bus
*
* Return: 0 on success, -errno on failure
*/ */
static int hv_pci_remove(struct hv_device *hdev) static void hv_pci_remove(struct hv_device *hdev)
{ {
struct hv_pcibus_device *hbus; struct hv_pcibus_device *hbus;
int ret;
hbus = hv_get_drvdata(hdev); hbus = hv_get_drvdata(hdev);
if (hbus->state == hv_pcibus_installed) { if (hbus->state == hv_pcibus_installed) {
...@@ -3829,7 +3826,7 @@ static int hv_pci_remove(struct hv_device *hdev) ...@@ -3829,7 +3826,7 @@ static int hv_pci_remove(struct hv_device *hdev)
pci_unlock_rescan_remove(); pci_unlock_rescan_remove();
} }
ret = hv_pci_bus_exit(hdev, false); hv_pci_bus_exit(hdev, false);
vmbus_close(hdev->channel); vmbus_close(hdev->channel);
...@@ -3842,7 +3839,6 @@ static int hv_pci_remove(struct hv_device *hdev) ...@@ -3842,7 +3839,6 @@ static int hv_pci_remove(struct hv_device *hdev)
hv_put_dom_num(hbus->bridge->domain_nr); hv_put_dom_num(hbus->bridge->domain_nr);
kfree(hbus); kfree(hbus);
return ret;
} }
static int hv_pci_suspend(struct hv_device *hdev) static int hv_pci_suspend(struct hv_device *hdev)
......
...@@ -2092,7 +2092,7 @@ static int storvsc_change_queue_depth(struct scsi_device *sdev, int queue_depth) ...@@ -2092,7 +2092,7 @@ static int storvsc_change_queue_depth(struct scsi_device *sdev, int queue_depth)
return scsi_change_queue_depth(sdev, queue_depth); return scsi_change_queue_depth(sdev, queue_depth);
} }
static int storvsc_remove(struct hv_device *dev) static void storvsc_remove(struct hv_device *dev)
{ {
struct storvsc_device *stor_device = hv_get_drvdata(dev); struct storvsc_device *stor_device = hv_get_drvdata(dev);
struct Scsi_Host *host = stor_device->host; struct Scsi_Host *host = stor_device->host;
...@@ -2108,8 +2108,6 @@ static int storvsc_remove(struct hv_device *dev) ...@@ -2108,8 +2108,6 @@ static int storvsc_remove(struct hv_device *dev)
scsi_remove_host(host); scsi_remove_host(host);
storvsc_dev_remove(dev); storvsc_dev_remove(dev);
scsi_host_put(host); scsi_host_put(host);
return 0;
} }
static int storvsc_suspend(struct hv_device *hv_dev) static int storvsc_suspend(struct hv_device *hv_dev)
......
...@@ -355,20 +355,19 @@ hv_uio_probe(struct hv_device *dev, ...@@ -355,20 +355,19 @@ hv_uio_probe(struct hv_device *dev,
return ret; return ret;
} }
static int static void
hv_uio_remove(struct hv_device *dev) hv_uio_remove(struct hv_device *dev)
{ {
struct hv_uio_private_data *pdata = hv_get_drvdata(dev); struct hv_uio_private_data *pdata = hv_get_drvdata(dev);
if (!pdata) if (!pdata)
return 0; return;
sysfs_remove_bin_file(&dev->channel->kobj, &ring_buffer_bin_attr); sysfs_remove_bin_file(&dev->channel->kobj, &ring_buffer_bin_attr);
uio_unregister_device(&pdata->info); uio_unregister_device(&pdata->info);
hv_uio_cleanup(dev, pdata); hv_uio_cleanup(dev, pdata);
vmbus_free_ring(dev->channel); vmbus_free_ring(dev->channel);
return 0;
} }
static struct hv_driver hv_uio_drv = { static struct hv_driver hv_uio_drv = {
......
...@@ -1239,8 +1239,7 @@ static int hvfb_probe(struct hv_device *hdev, ...@@ -1239,8 +1239,7 @@ static int hvfb_probe(struct hv_device *hdev,
return ret; return ret;
} }
static void hvfb_remove(struct hv_device *hdev)
static int hvfb_remove(struct hv_device *hdev)
{ {
struct fb_info *info = hv_get_drvdata(hdev); struct fb_info *info = hv_get_drvdata(hdev);
struct hvfb_par *par = info->par; struct hvfb_par *par = info->par;
...@@ -1261,8 +1260,6 @@ static int hvfb_remove(struct hv_device *hdev) ...@@ -1261,8 +1260,6 @@ static int hvfb_remove(struct hv_device *hdev)
hvfb_putmem(hdev, info); hvfb_putmem(hdev, info);
framebuffer_release(info); framebuffer_release(info);
return 0;
} }
static int hvfb_suspend(struct hv_device *hdev) static int hvfb_suspend(struct hv_device *hdev)
......
...@@ -1273,7 +1273,7 @@ struct hv_driver { ...@@ -1273,7 +1273,7 @@ struct hv_driver {
} dynids; } dynids;
int (*probe)(struct hv_device *, const struct hv_vmbus_device_id *); int (*probe)(struct hv_device *, const struct hv_vmbus_device_id *);
int (*remove)(struct hv_device *); void (*remove)(struct hv_device *dev);
void (*shutdown)(struct hv_device *); void (*shutdown)(struct hv_device *);
int (*suspend)(struct hv_device *); int (*suspend)(struct hv_device *);
......
...@@ -879,13 +879,11 @@ static int hvs_probe(struct hv_device *hdev, ...@@ -879,13 +879,11 @@ static int hvs_probe(struct hv_device *hdev,
return 0; return 0;
} }
static int hvs_remove(struct hv_device *hdev) static void hvs_remove(struct hv_device *hdev)
{ {
struct vmbus_channel *chan = hdev->channel; struct vmbus_channel *chan = hdev->channel;
vmbus_close(chan); vmbus_close(chan);
return 0;
} }
/* hv_sock connections can not persist across hibernation, and all the hv_sock /* hv_sock connections can not persist across hibernation, and all the hv_sock
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment