drm: Change the return type of the unload hook to void
authorGabriel Krisman Bertazi <krisman@collabora.co.uk>
Fri, 6 Jan 2017 17:57:31 +0000 (15:57 -0200)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Mon, 9 Jan 2017 10:25:22 +0000 (11:25 +0100)
The integer returned by the unload hook is ignored by the drm core, so
let's make it void.

This patch was created using the following Coccinelle semantic script
(except for the declaration and comment in drm_drv.h):

Compile-tested only.

// <smpl>
@ get_name @
struct drm_driver drv;
identifier fn;
@@
drv.unload = fn;

@ replace_type @
identifier get_name.fn;
@@
- int
+ void
fn (...)
{
...
}

@ remove_return_param @
identifier get_name.fn;
@@
void fn (...)
{
<...
if (...)
return
- ...
;
...>
 }

@ drop_final_return @
identifier get_name.fn;
@@
void fn (...)
{
...

- return 0;
}
// </smpl>

Suggested-by: Daniel Vetter <daniel.vetter@intel.com>
Signed-off-by: Gabriel Krisman Bertazi <krisman@collabora.co.uk>
Acked-by: Christian König <christian.koenig@amd.com>.
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: http://patchwork.freedesktop.org/patch/msgid/20170106175731.29196-1-krisman@collabora.co.uk
33 files changed:
drivers/gpu/drm/amd/amdgpu/amdgpu.h
drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c
drivers/gpu/drm/ast/ast_drv.h
drivers/gpu/drm/ast/ast_main.c
drivers/gpu/drm/bochs/bochs_drv.c
drivers/gpu/drm/cirrus/cirrus_drv.h
drivers/gpu/drm/cirrus/cirrus_main.c
drivers/gpu/drm/exynos/exynos_drm_drv.c
drivers/gpu/drm/fsl-dcu/fsl_dcu_drm_drv.c
drivers/gpu/drm/gma500/psb_drv.c
drivers/gpu/drm/mga/mga_dma.c
drivers/gpu/drm/mga/mga_drv.h
drivers/gpu/drm/mgag200/mgag200_drv.h
drivers/gpu/drm/mgag200/mgag200_main.c
drivers/gpu/drm/nouveau/nouveau_drm.c
drivers/gpu/drm/omapdrm/omap_drv.c
drivers/gpu/drm/qxl/qxl_drv.h
drivers/gpu/drm/qxl/qxl_kms.c
drivers/gpu/drm/radeon/radeon_drv.c
drivers/gpu/drm/radeon/radeon_kms.c
drivers/gpu/drm/savage/savage_bci.c
drivers/gpu/drm/savage/savage_drv.h
drivers/gpu/drm/shmobile/shmob_drm_drv.c
drivers/gpu/drm/sis/sis_drv.c
drivers/gpu/drm/tegra/drm.c
drivers/gpu/drm/udl/udl_drv.h
drivers/gpu/drm/udl/udl_main.c
drivers/gpu/drm/via/via_drv.h
drivers/gpu/drm/via/via_map.c
drivers/gpu/drm/virtio/virtgpu_drv.h
drivers/gpu/drm/virtio/virtgpu_kms.c
drivers/gpu/drm/vmwgfx/vmwgfx_drv.c
include/drm/drm_drv.h

index 54ac8a845e9f4852bb13fac308770de5e695a288..7077ed65d403c8cef3319eba9a9e5126d1b9ee61 100644 (file)
@@ -1711,7 +1711,7 @@ extern const struct drm_ioctl_desc amdgpu_ioctls_kms[];
 extern const int amdgpu_max_kms_ioctl;
 
 int amdgpu_driver_load_kms(struct drm_device *dev, unsigned long flags);
-int amdgpu_driver_unload_kms(struct drm_device *dev);
+void amdgpu_driver_unload_kms(struct drm_device *dev);
 void amdgpu_driver_lastclose_kms(struct drm_device *dev);
 int amdgpu_driver_open_kms(struct drm_device *dev, struct drm_file *file_priv);
 void amdgpu_driver_postclose_kms(struct drm_device *dev,
index 9af87eaf8ee3709146e9d6af533ae7dddbeb8f73..8aef2582888823f38df9e48d081bf9293733f899 100644 (file)
@@ -50,12 +50,12 @@ static inline bool amdgpu_has_atpx(void) { return false; }
  * This is the main unload function for KMS (all asics).
  * Returns 0 on success.
  */
-int amdgpu_driver_unload_kms(struct drm_device *dev)
+void amdgpu_driver_unload_kms(struct drm_device *dev)
 {
        struct amdgpu_device *adev = dev->dev_private;
 
        if (adev == NULL)
-               return 0;
+               return;
 
        if (adev->rmmio == NULL)
                goto done_free;
@@ -74,7 +74,6 @@ int amdgpu_driver_unload_kms(struct drm_device *dev)
 done_free:
        kfree(adev);
        dev->dev_private = NULL;
-       return 0;
 }
 
 /**
index 6f3b6f50cf524a6b4214da4818d3d43585fdd10a..1051181d8c0d5737fd0b1f89054f4ee286c75a05 100644 (file)
@@ -122,7 +122,7 @@ struct ast_private {
 };
 
 int ast_driver_load(struct drm_device *dev, unsigned long flags);
-int ast_driver_unload(struct drm_device *dev);
+void ast_driver_unload(struct drm_device *dev);
 
 struct ast_gem_object;
 
index d85af0ff2653b8a8b5d0c874fe912d3bf27f8f3b..5b59888426cf9c48cc02df7e60a3099d4ae30957 100644 (file)
@@ -476,7 +476,7 @@ out_free:
        return ret;
 }
 
-int ast_driver_unload(struct drm_device *dev)
+void ast_driver_unload(struct drm_device *dev)
 {
        struct ast_private *ast = dev->dev_private;
 
@@ -489,7 +489,6 @@ int ast_driver_unload(struct drm_device *dev)
        pci_iounmap(dev->pdev, ast->ioregs);
        pci_iounmap(dev->pdev, ast->regs);
        kfree(ast);
-       return 0;
 }
 
 int ast_gem_create(struct drm_device *dev,
index 15a293e65b313a63d39ec45631e4c4c087f9ec21..8a12b3f6fc66e0027f3d362bea42c99e146b9a26 100644 (file)
@@ -19,7 +19,7 @@ MODULE_PARM_DESC(fbdev, "register fbdev device");
 /* ---------------------------------------------------------------------- */
 /* drm interface                                                          */
 
-static int bochs_unload(struct drm_device *dev)
+static void bochs_unload(struct drm_device *dev)
 {
        struct bochs_device *bochs = dev->dev_private;
 
@@ -29,7 +29,6 @@ static int bochs_unload(struct drm_device *dev)
        bochs_hw_fini(dev);
        kfree(bochs);
        dev->dev_private = NULL;
-       return 0;
 }
 
 static int bochs_load(struct drm_device *dev, unsigned long flags)
index b59aeef4635aded2e22d23ac291a44a3b91dc625..8690352d96f7b49c169fac7760e1fea1f36acbd1 100644 (file)
@@ -231,7 +231,7 @@ irqreturn_t cirrus_driver_irq_handler(int irq, void *arg);
 
                                /* cirrus_kms.c */
 int cirrus_driver_load(struct drm_device *dev, unsigned long flags);
-int cirrus_driver_unload(struct drm_device *dev);
+void cirrus_driver_unload(struct drm_device *dev);
 extern struct drm_ioctl_desc cirrus_ioctls[];
 extern int cirrus_max_ioctl;
 
index 52d901fa86872d7f45f6cc6c476257f8664b039f..e7fc95f63dcaacdbfd9203e3bc883f18e83920e7 100644 (file)
@@ -208,18 +208,17 @@ out:
        return r;
 }
 
-int cirrus_driver_unload(struct drm_device *dev)
+void cirrus_driver_unload(struct drm_device *dev)
 {
        struct cirrus_device *cdev = dev->dev_private;
 
        if (cdev == NULL)
-               return 0;
+               return;
        cirrus_modeset_fini(cdev);
        cirrus_mm_fini(cdev);
        cirrus_device_fini(cdev);
        kfree(cdev);
        dev->dev_private = NULL;
-       return 0;
 }
 
 int cirrus_gem_create(struct drm_device *dev,
index 739180ac3da54f16e475d2e374635958cf14983c..3ec053542e93f36c84a29e47cf67a5cb44c71bcb 100644 (file)
@@ -186,7 +186,7 @@ err_free_private:
        return ret;
 }
 
-static int exynos_drm_unload(struct drm_device *dev)
+static void exynos_drm_unload(struct drm_device *dev)
 {
        exynos_drm_device_subdrv_remove(dev);
 
@@ -200,8 +200,6 @@ static int exynos_drm_unload(struct drm_device *dev)
 
        kfree(dev->dev_private);
        dev->dev_private = NULL;
-
-       return 0;
 }
 
 static int commit_is_pending(struct exynos_drm_private *priv, u32 crtcs)
index 9a31711d51584c55730f5f29e177935bddc7b041..48705248f894da25aae649454960c416c9a8802f 100644 (file)
@@ -116,7 +116,7 @@ done:
        return ret;
 }
 
-static int fsl_dcu_unload(struct drm_device *dev)
+static void fsl_dcu_unload(struct drm_device *dev)
 {
        struct fsl_dcu_drm_device *fsl_dev = dev->dev_private;
 
@@ -131,8 +131,6 @@ static int fsl_dcu_unload(struct drm_device *dev)
        drm_irq_uninstall(dev);
 
        dev->dev_private = NULL;
-
-       return 0;
 }
 
 static irqreturn_t fsl_dcu_drm_irq(int irq, void *arg)
index ff37ea585664572233331b95588afefa8711070d..0dc7ba2fdc22b851f20c331b349d1966eed16d92 100644 (file)
@@ -159,7 +159,7 @@ static int psb_do_init(struct drm_device *dev)
        return 0;
 }
 
-static int psb_driver_unload(struct drm_device *dev)
+static void psb_driver_unload(struct drm_device *dev)
 {
        struct drm_psb_private *dev_priv = dev->dev_private;
 
@@ -220,7 +220,6 @@ static int psb_driver_unload(struct drm_device *dev)
                dev->dev_private = NULL;
        }
        gma_power_uninit(dev);
-       return 0;
 }
 
 static int psb_driver_load(struct drm_device *dev, unsigned long flags)
index 1f2f9ca259010184ee6e949facd44df1e964f9f0..a1d8dd15b1312d5e348850db5e34a0c2707ced1c 100644 (file)
@@ -1127,12 +1127,10 @@ int mga_dma_buffers(struct drm_device *dev, void *data,
 /**
  * Called just before the module is unloaded.
  */
-int mga_driver_unload(struct drm_device *dev)
+void mga_driver_unload(struct drm_device *dev)
 {
        kfree(dev->dev_private);
        dev->dev_private = NULL;
-
-       return 0;
 }
 
 /**
index bb312339e0b00cbe8b2c45e5d32c2e5a7e1337d1..d5ce829b31995fa4b63adb3d20517d0662d68a46 100644 (file)
@@ -166,7 +166,7 @@ extern int mga_dma_reset(struct drm_device *dev, void *data,
 extern int mga_dma_buffers(struct drm_device *dev, void *data,
                           struct drm_file *file_priv);
 extern int mga_driver_load(struct drm_device *dev, unsigned long flags);
-extern int mga_driver_unload(struct drm_device *dev);
+extern void mga_driver_unload(struct drm_device *dev);
 extern void mga_driver_lastclose(struct drm_device *dev);
 extern int mga_driver_dma_quiescent(struct drm_device *dev);
 
index 87e0934773de7f7af294b6ea54f68722bbfed2e9..0d6e998d63e6e761c109264f73e0e30a49eea046 100644 (file)
@@ -258,7 +258,7 @@ int mgag200_framebuffer_init(struct drm_device *dev,
 
 
 int mgag200_driver_load(struct drm_device *dev, unsigned long flags);
-int mgag200_driver_unload(struct drm_device *dev);
+void mgag200_driver_unload(struct drm_device *dev);
 int mgag200_gem_create(struct drm_device *dev,
                   u32 size, bool iskernel,
                       struct drm_gem_object **obj);
index da8ba6c154e33b141e4b52f00d2911c52c5ccbf8..dce8a3eb5a1065cba88368f25405784a5432910b 100644 (file)
@@ -264,18 +264,17 @@ err_mm:
        return r;
 }
 
-int mgag200_driver_unload(struct drm_device *dev)
+void mgag200_driver_unload(struct drm_device *dev)
 {
        struct mga_device *mdev = dev->dev_private;
 
        if (mdev == NULL)
-               return 0;
+               return;
        mgag200_modeset_fini(mdev);
        mgag200_fbdev_fini(mdev);
        drm_mode_config_cleanup(dev);
        mgag200_mm_fini(mdev);
        dev->dev_private = NULL;
-       return 0;
 }
 
 int mgag200_gem_create(struct drm_device *dev,
index 59348fc41c77b0edf725e01655fe3ef1722a4342..dd7b52ab505a023f9491ee29bc97d1318726de6d 100644 (file)
@@ -502,7 +502,7 @@ fail_device:
        return ret;
 }
 
-static int
+static void
 nouveau_drm_unload(struct drm_device *dev)
 {
        struct nouveau_drm *drm = nouveau_drm(dev);
@@ -531,7 +531,6 @@ nouveau_drm_unload(struct drm_device *dev)
        if (drm->hdmi_device)
                pci_dev_put(drm->hdmi_device);
        nouveau_cli_destroy(&drm->client);
-       return 0;
 }
 
 void
index fdc83cbcde6186e9f560dcad8f5461aae5f68465..4fd2e1799a88b6fa7319d0097effab1a933dbf27 100644 (file)
@@ -694,7 +694,7 @@ static int dev_load(struct drm_device *dev, unsigned long flags)
        return 0;
 }
 
-static int dev_unload(struct drm_device *dev)
+static void dev_unload(struct drm_device *dev)
 {
        struct omap_drm_private *priv = dev->dev_private;
 
@@ -717,8 +717,6 @@ static int dev_unload(struct drm_device *dev)
        dev->dev_private = NULL;
 
        dev_set_drvdata(dev->dev, NULL);
-
-       return 0;
 }
 
 static int dev_open(struct drm_device *dev, struct drm_file *file)
index f15ddd0eb85b3436ed6ab1eeed32ae586350c2cc..883d8639c04e57a82f81fbac081ac9fdbf586915 100644 (file)
@@ -337,7 +337,7 @@ extern const struct drm_ioctl_desc qxl_ioctls[];
 extern int qxl_max_ioctl;
 
 int qxl_driver_load(struct drm_device *dev, unsigned long flags);
-int qxl_driver_unload(struct drm_device *dev);
+void qxl_driver_unload(struct drm_device *dev);
 
 int qxl_modeset_init(struct qxl_device *qdev);
 void qxl_modeset_fini(struct qxl_device *qdev);
index af685f1d91f8219f783af62db821f33bf684636e..b2491407b616ef1728340306187ae4ffaec11564 100644 (file)
@@ -285,12 +285,12 @@ static void qxl_device_fini(struct qxl_device *qdev)
        qxl_debugfs_remove_files(qdev);
 }
 
-int qxl_driver_unload(struct drm_device *dev)
+void qxl_driver_unload(struct drm_device *dev)
 {
        struct qxl_device *qdev = dev->dev_private;
 
        if (qdev == NULL)
-               return 0;
+               return;
 
        drm_vblank_cleanup(dev);
 
@@ -299,7 +299,6 @@ int qxl_driver_unload(struct drm_device *dev)
 
        kfree(qdev);
        dev->dev_private = NULL;
-       return 0;
 }
 
 int qxl_driver_load(struct drm_device *dev, unsigned long flags)
index 00ea0002b539b9e9b5b0a063f62deb3b7638fd56..af3bbe82fd48992cfd979711925fa4e5c784054f 100644 (file)
 #define KMS_DRIVER_MINOR       48
 #define KMS_DRIVER_PATCHLEVEL  0
 int radeon_driver_load_kms(struct drm_device *dev, unsigned long flags);
-int radeon_driver_unload_kms(struct drm_device *dev);
+void radeon_driver_unload_kms(struct drm_device *dev);
 void radeon_driver_lastclose_kms(struct drm_device *dev);
 int radeon_driver_open_kms(struct drm_device *dev, struct drm_file *file_priv);
 void radeon_driver_postclose_kms(struct drm_device *dev,
index 4388ddeec8d243928cbff7ecedbdfd5a78f80023..116cf0d23595efd465bf65dca24166a3e1e69415 100644 (file)
@@ -53,12 +53,12 @@ static inline bool radeon_has_atpx(void) { return false; }
  * the rest of the device (CP, writeback, etc.).
  * Returns 0 on success.
  */
-int radeon_driver_unload_kms(struct drm_device *dev)
+void radeon_driver_unload_kms(struct drm_device *dev)
 {
        struct radeon_device *rdev = dev->dev_private;
 
        if (rdev == NULL)
-               return 0;
+               return;
 
        if (rdev->rmmio == NULL)
                goto done_free;
@@ -78,7 +78,6 @@ int radeon_driver_unload_kms(struct drm_device *dev)
 done_free:
        kfree(rdev);
        dev->dev_private = NULL;
-       return 0;
 }
 
 /**
index d47dff95fe5283a22e3736d33c399d9adecfb357..2a5b8466d806c2e7a5fe1c3095360f2aca007da0 100644 (file)
@@ -655,13 +655,11 @@ void savage_driver_lastclose(struct drm_device *dev)
        }
 }
 
-int savage_driver_unload(struct drm_device *dev)
+void savage_driver_unload(struct drm_device *dev)
 {
        drm_savage_private_t *dev_priv = dev->dev_private;
 
        kfree(dev_priv);
-
-       return 0;
 }
 
 static int savage_do_init_bci(struct drm_device * dev, drm_savage_init_t * init)
index 37b699571ad0e81d4e40e204bacc551fa94be164..44a1009b6ecbc4070cf12e986b36d73cfa63b072 100644 (file)
@@ -210,7 +210,7 @@ extern uint32_t *savage_dma_alloc(drm_savage_private_t * dev_priv,
 extern int savage_driver_load(struct drm_device *dev, unsigned long chipset);
 extern int savage_driver_firstopen(struct drm_device *dev);
 extern void savage_driver_lastclose(struct drm_device *dev);
-extern int savage_driver_unload(struct drm_device *dev);
+extern void savage_driver_unload(struct drm_device *dev);
 extern void savage_reclaim_buffers(struct drm_device *dev,
                                   struct drm_file *file_priv);
 
index 38dd55f4af812fec3e7ef55104f7293344eea7e4..33cec3d4238969579cf114f1775d4f94ad82d02b 100644 (file)
@@ -104,7 +104,7 @@ static int shmob_drm_setup_clocks(struct shmob_drm_device *sdev,
  * DRM operations
  */
 
-static int shmob_drm_unload(struct drm_device *dev)
+static void shmob_drm_unload(struct drm_device *dev)
 {
        drm_kms_helper_poll_fini(dev);
        drm_mode_config_cleanup(dev);
@@ -112,8 +112,6 @@ static int shmob_drm_unload(struct drm_device *dev)
        drm_irq_uninstall(dev);
 
        dev->dev_private = NULL;
-
-       return 0;
 }
 
 static int shmob_drm_load(struct drm_device *dev, unsigned long flags)
index a836451920f0f605c2616f5d2918dd34680beffd..7f05da13ea5ed44729d4d3349a39ce004a23df99 100644 (file)
@@ -54,15 +54,13 @@ static int sis_driver_load(struct drm_device *dev, unsigned long chipset)
        return 0;
 }
 
-static int sis_driver_unload(struct drm_device *dev)
+static void sis_driver_unload(struct drm_device *dev)
 {
        drm_sis_private_t *dev_priv = dev->dev_private;
 
        idr_destroy(&dev_priv->object_idr);
 
        kfree(dev_priv);
-
-       return 0;
 }
 
 static const struct file_operations sis_driver_fops = {
index 2817f43f334444f87e865ebdcbfe57de077eefe7..0f4eacb0af4f5da4126e64fa1872be9a3f88e0c4 100644 (file)
@@ -214,7 +214,7 @@ free:
        return err;
 }
 
-static int tegra_drm_unload(struct drm_device *drm)
+static void tegra_drm_unload(struct drm_device *drm)
 {
        struct host1x_device *device = to_host1x_device(drm->dev);
        struct tegra_drm *tegra = drm->dev_private;
@@ -227,7 +227,7 @@ static int tegra_drm_unload(struct drm_device *drm)
 
        err = host1x_device_exit(device);
        if (err < 0)
-               return err;
+               return;
 
        if (tegra->domain) {
                iommu_domain_free(tegra->domain);
@@ -235,8 +235,6 @@ static int tegra_drm_unload(struct drm_device *drm)
        }
 
        kfree(tegra);
-
-       return 0;
 }
 
 static int tegra_drm_open(struct drm_device *drm, struct drm_file *filp)
index f338a576efc8220ce1298e4849cb3a0e1a5bc837..6c4286e57362ad5af12790c3c9d7742d5d12417c 100644 (file)
@@ -100,7 +100,7 @@ int udl_submit_urb(struct drm_device *dev, struct urb *urb, size_t len);
 void udl_urb_completion(struct urb *urb);
 
 int udl_driver_load(struct drm_device *dev, unsigned long flags);
-int udl_driver_unload(struct drm_device *dev);
+void udl_driver_unload(struct drm_device *dev);
 
 int udl_fbdev_init(struct drm_device *dev);
 void udl_fbdev_cleanup(struct drm_device *dev);
index 873f010d9616f702deb3d59947831c28a899b853..a9d93b871a15e3e5172c16661178f16723805c11 100644 (file)
@@ -367,7 +367,7 @@ int udl_drop_usb(struct drm_device *dev)
        return 0;
 }
 
-int udl_driver_unload(struct drm_device *dev)
+void udl_driver_unload(struct drm_device *dev)
 {
        struct udl_device *udl = dev->dev_private;
 
@@ -379,5 +379,4 @@ int udl_driver_unload(struct drm_device *dev)
        udl_fbdev_cleanup(dev);
        udl_modeset_cleanup(dev);
        kfree(udl);
-       return 0;
 }
index 286a785fab4f27d71d5ceea6166cd7b75986de5f..9873942ca8f4814c4b31962ac4211b381fb09237 100644 (file)
@@ -134,7 +134,7 @@ extern int via_dma_blit_sync(struct drm_device *dev, void *data, struct drm_file
 extern int via_dma_blit(struct drm_device *dev, void *data, struct drm_file *file_priv);
 
 extern int via_driver_load(struct drm_device *dev, unsigned long chipset);
-extern int via_driver_unload(struct drm_device *dev);
+extern void via_driver_unload(struct drm_device *dev);
 
 extern int via_init_context(struct drm_device *dev, int context);
 extern int via_final_context(struct drm_device *dev, int context);
index 0b3522dba6e862829c0a4b2abe5e1fefbc461515..2ad8658703729ddeb52accfeff4569b4ad11e885 100644 (file)
@@ -116,13 +116,11 @@ int via_driver_load(struct drm_device *dev, unsigned long chipset)
        return 0;
 }
 
-int via_driver_unload(struct drm_device *dev)
+void via_driver_unload(struct drm_device *dev)
 {
        drm_via_private_t *dev_priv = dev->dev_private;
 
        idr_destroy(&dev_priv->object_idr);
 
        kfree(dev_priv);
-
-       return 0;
 }
index 025f2e3d483f3cda1dfd4edcc29fb1dfaf202381..2f766735c16d56ebad7ca57f8846996ca59f3eea 100644 (file)
@@ -215,7 +215,7 @@ extern struct drm_ioctl_desc virtio_gpu_ioctls[DRM_VIRTIO_NUM_IOCTLS];
 
 /* virtio_kms.c */
 int virtio_gpu_driver_load(struct drm_device *dev, unsigned long flags);
-int virtio_gpu_driver_unload(struct drm_device *dev);
+void virtio_gpu_driver_unload(struct drm_device *dev);
 int virtio_gpu_driver_open(struct drm_device *dev, struct drm_file *file);
 void virtio_gpu_driver_postclose(struct drm_device *dev, struct drm_file *file);
 
index 1235519853f4df79481a0b9c0050c7e15ab1f4e0..fae75394b5d0afeb7377688f15bbc791860781b9 100644 (file)
@@ -246,7 +246,7 @@ static void virtio_gpu_cleanup_cap_cache(struct virtio_gpu_device *vgdev)
        }
 }
 
-int virtio_gpu_driver_unload(struct drm_device *dev)
+void virtio_gpu_driver_unload(struct drm_device *dev)
 {
        struct virtio_gpu_device *vgdev = dev->dev_private;
 
@@ -262,7 +262,6 @@ int virtio_gpu_driver_unload(struct drm_device *dev)
        virtio_gpu_cleanup_cap_cache(vgdev);
        kfree(vgdev->capsets);
        kfree(vgdev);
-       return 0;
 }
 
 int virtio_gpu_driver_open(struct drm_device *dev, struct drm_file *file)
index 18061a4bc2f287f9d99debc461a22bcd9c9f3c4d..be35385bb26c8b2f3b253b28ba98eaad10a9585b 100644 (file)
@@ -951,7 +951,7 @@ out_err0:
        return ret;
 }
 
-static int vmw_driver_unload(struct drm_device *dev)
+static void vmw_driver_unload(struct drm_device *dev)
 {
        struct vmw_private *dev_priv = vmw_priv(dev);
        enum vmw_res_type i;
@@ -998,8 +998,6 @@ static int vmw_driver_unload(struct drm_device *dev)
                idr_destroy(&dev_priv->res_idr[i]);
 
        kfree(dev_priv);
-
-       return 0;
 }
 
 static void vmw_postclose(struct drm_device *dev,
index 9c2d9f0bb043797a8ce70e651fb92bd68dfb6cab..34ece393c639df916e99ee287320a5c5872ad225 100644 (file)
@@ -101,11 +101,8 @@ struct drm_driver {
         * The unload() hook is called right after unregistering
         * the device.
         *
-        * Returns:
-        *
-        * The return value is ignored.
         */
-       int (*unload) (struct drm_device *);
+       void (*unload) (struct drm_device *);
        int (*dma_ioctl) (struct drm_device *dev, void *data, struct drm_file *file_priv);
        int (*dma_quiescent) (struct drm_device *);
        int (*context_dtor) (struct drm_device *dev, int context);