cyber2000fb.c: use proper method for stopping unload if CONFIG_ARCH_SHARK

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Linux Kernel Mailing List
Date: Friday, June 12, 2009 - 10:59 am

Gitweb:     http://git.kernel.org/linus/ab8e2eb722f1e5fcbd8181e3e9ef4e95c52124df
Commit:     ab8e2eb722f1e5fcbd8181e3e9ef4e95c52124df
Parent:     8ebf975608aaebd7feb33d77f07ba21a6380e086
Author:     Rusty Russell <rusty@rustcorp.com.au>
AuthorDate: Fri Jun 12 21:46:50 2009 -0600
Committer:  Rusty Russell <rusty@rustcorp.com.au>
CommitDate: Fri Jun 12 21:46:53 2009 +0930

    cyber2000fb.c: use proper method for stopping unload if CONFIG_ARCH_SHARK
    
    Russell explains the __module_get():
    > cyber2000fb.c does it in its module initialization function
    > to prevent the module (when built for Shark) from being unloaded.  It
    > does this because it's from the days of 2.2 kernels and no one bothered
    > writing the module unload support for Shark.
    
    Since 2.4, the correct answer has been to not define an unload fn.
    
    Cc: Russell King <rmk+lkml@arm.linux.org.uk>
    Cc: alex@shark-linux.de
    Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
---
 drivers/video/cyber2000fb.c |    9 ++++-----
 1 files changed, 4 insertions(+), 5 deletions(-)

diff --git a/drivers/video/cyber2000fb.c b/drivers/video/cyber2000fb.c
index 83c5cef..da7c01b 100644
--- a/drivers/video/cyber2000fb.c
+++ b/drivers/video/cyber2000fb.c
@@ -1736,10 +1736,8 @@ static int __init cyber2000fb_init(void)
 
 #ifdef CONFIG_ARCH_SHARK
 	err = cyberpro_vl_probe();
-	if (!err) {
+	if (!err)
 		ret = 0;
-		__module_get(THIS_MODULE);
-	}
 #endif
 #ifdef CONFIG_PCI
 	err = pci_register_driver(&cyberpro_driver);
@@ -1749,14 +1747,15 @@ static int __init cyber2000fb_init(void)
 
 	return ret ? err : 0;
 }
+module_init(cyber2000fb_init);
 
+#ifndef CONFIG_ARCH_SHARK
 static void __exit cyberpro_exit(void)
 {
 	pci_unregister_driver(&cyberpro_driver);
 }
-
-module_init(cyber2000fb_init);
 module_exit(cyberpro_exit);
+#endif
 
 MODULE_AUTHOR("Russell King");
 MODULE_DESCRIPTION("CyberPro 2000, 2010 and 5000 framebuffer driver");
--
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
cyber2000fb.c: use proper method for stopping unload if CO ..., Linux Kernel Mailing ..., (Fri Jun 12, 10:59 am)