Skip to contentSkip to conversation

void unregister_chrdev - ignore the return value

PATCH New Akinobu Mita 1 participant 2 messages Jun 30, 2007

Subsystems (5)
lore
Share & tools
lore
#0 lore raw

PATCH 1/2 void unregister_chrdev - ignore the return value

register_chrdev() always returns 0.
There is no need to check the return value.

---
 arch/cris/arch-v10/drivers/pcf8563.c |    4 +---
 arch/cris/arch-v32/drivers/pcf8563.c |    4 +---
 arch/sparc64/solaris/socksys.c       |    3 +--
 drivers/block/acsi_slm.c             |    3 +--
 drivers/char/ip2/ip2main.c           |    4 +---
 drivers/char/mbcs.c                  |    7 +------
 drivers/char/stallion.c              |    5 +----
 drivers/char/viotape.c               |    7 +------
 drivers/net/ppp_generic.c            |    3 +--
 sound/core/sound.c                   |    3 +--
 10 files changed, 10 insertions(+), 33 deletions(-)
drivers/net/ppp_generic.c +1 -2
Index: 2.6-mm/drivers/net/ppp_generic.c
===================================================================
@@ -2684,8 +2684,7 @@ static void __exit ppp_cleanup(void)
 	if (atomic_read(&ppp_unit_count) || atomic_read(&channel_count))
 		printk(KERN_ERR "PPP: removing module but units remain!\n");
 	cardmap_destroy(&all_ppp_units);
-	if (unregister_chrdev(PPP_MAJOR, "ppp") != 0)
-		printk(KERN_ERR "PPP: failed to unregister PPP device\n");
+	unregister_chrdev(PPP_MAJOR, "ppp");
 	device_destroy(ppp_class, MKDEV(PPP_MAJOR, 0));
 	class_destroy(ppp_class);
 }
drivers/char/ip2/ip2main.c +1 -3
Index: 2.6-mm/drivers/char/ip2/ip2main.c
===================================================================
@@ -425,9 +425,7 @@ cleanup_module(void)
 		printk(KERN_ERR "IP2: failed to unregister tty driver (%d)\n", err);
 	}
 	put_tty_driver(ip2_tty_driver);
-	if ( ( err = unregister_chrdev ( IP2_IPL_MAJOR, pcIpl ) ) ) {
-		printk(KERN_ERR "IP2: failed to unregister IPL driver (%d)\n", err);
-	}
+	unregister_chrdev(IP2_IPL_MAJOR, pcIpl);
 	remove_proc_entry("ip2mem", &proc_root);
 
 	// free memory
sound/core/sound.c +1 -2
Index: 2.6-mm/sound/core/sound.c
===================================================================
@@ -451,8 +451,7 @@ static void __exit alsa_sound_exit(void)
 {
 	snd_info_minor_unregister();
 	snd_info_done();
-	if (unregister_chrdev(major, "alsa") != 0)
-		snd_printk(KERN_ERR "unable to unregister major device number %d\n", major);
+	unregister_chrdev(major, "alsa");
 }
 
 module_init(alsa_sound_init)
drivers/block/acsi_slm.c +1 -2
Index: 2.6-mm/drivers/block/acsi_slm.c
===================================================================
@@ -1025,8 +1025,7 @@ int init_module(void)
 
 void cleanup_module(void)
 {
-	if (unregister_chrdev( ACSI_MAJOR, "slm" ) != 0)
-		printk( KERN_ERR "acsi_slm: cleanup_module failed\n");
+	unregister_chrdev(ACSI_MAJOR, "slm");
 	atari_stram_free( SLMBuffer );
 }
 #endif
drivers/char/stallion.c +1 -4
Index: 2.6-mm/drivers/char/stallion.c
===================================================================
@@ -4797,7 +4797,6 @@ static void __exit stallion_module_exit(
 {
 	struct stlbrd *brdp;
 	unsigned int i, j;
-	int retval;
 
 	pr_debug("cleanup_module()\n");
 
@@ -4820,9 +4819,7 @@ static void __exit stallion_module_exit(
 
 	for (i = 0; i < 4; i++)
 		class_device_destroy(stallion_class, MKDEV(STL_SIOMEMMAJOR, i));
-	if ((retval = unregister_chrdev(STL_SIOMEMMAJOR, "staliomem")))
-		printk("STALLION: failed to un-register serial memory device, "
-			"errno=%d\n", -retval);
+	unregister_chrdev(STL_SIOMEMMAJOR, "staliomem");
 	class_destroy(stallion_class);
 
 	pci_unregister_driver(&stl_pcidriver);
arch/cris/arch-v10/drivers/pcf8563.c +1 -3
Index: 2.6-mm/arch/cris/arch-v10/drivers/pcf8563.c
===================================================================
@@ -180,9 +180,7 @@ err:
 void __exit
 pcf8563_exit(void)
 {
-	if (unregister_chrdev(PCF8563_MAJOR, DEVICE_NAME) < 0) {
-		printk(KERN_INFO "%s: Unable to unregister device.\n", PCF8563_NAME);
-	}
+	unregister_chrdev(PCF8563_MAJOR, DEVICE_NAME);
 }
 
 /*
arch/sparc64/solaris/socksys.c +1 -2
Index: 2.6-mm/arch/sparc64/solaris/socksys.c
===================================================================
@@ -199,6 +199,5 @@ int __init init_socksys(void)
 
 void __exit cleanup_socksys(void)
 {
-	if (unregister_chrdev(30, "socksys"))
-		printk ("Couldn't unregister socksys character device\n");
+	unregister_chrdev(30, "socksys");
 }
arch/cris/arch-v32/drivers/pcf8563.c +1 -3
Index: 2.6-mm/arch/cris/arch-v32/drivers/pcf8563.c
===================================================================
@@ -193,9 +193,7 @@ err:
 void __exit
 pcf8563_exit(void)
 {
-	if (unregister_chrdev(PCF8563_MAJOR, DEVICE_NAME) < 0) {
-		printk(KERN_INFO "%s: Unable to unregister device.\n", PCF8563_NAME);
-	}
+	unregister_chrdev(PCF8563_MAJOR, DEVICE_NAME);
 }
 
 /*
drivers/char/mbcs.c +1 -6
Index: 2.6-mm/drivers/char/mbcs.c
===================================================================
@@ -817,12 +817,7 @@ struct cx_drv mbcs_driver = {
 
 static void __exit mbcs_exit(void)
 {
-	int rv;
-
-	rv = unregister_chrdev(mbcs_major, DEVICE_NAME);
-	if (rv < 0)
-		DBG(KERN_ALERT "Error in unregister_chrdev: %d\n", rv);
-
+	unregister_chrdev(mbcs_major, DEVICE_NAME);
 	cx_driver_unregister(&mbcs_driver);
 }
 
drivers/char/viotape.c +1 -6
Index: 2.6-mm/drivers/char/viotape.c
===================================================================
@@ -1098,15 +1098,10 @@ static int chg_state(int index, unsigned
 /* Cleanup */
 static void __exit viotap_exit(void)
 {
-	int ret;
-
 	remove_proc_entry("iSeries/viotape", NULL);
 	vio_unregister_driver(&viotape_driver);
 	class_destroy(tape_class);
-	ret = unregister_chrdev(VIOTAPE_MAJOR, "viotape");
-	if (ret < 0)
-		printk(VIOTAPE_KERN_WARN "Error unregistering device: %d\n",
-				ret);
+	unregister_chrdev(VIOTAPE_MAJOR, "viotape");
 	if (viotape_unitinfo)
 		dma_free_coherent(iSeries_vio_dev,
 				sizeof(viotape_unitinfo[0]) * VIOTAPE_MAX_TAPE,
#1 lore raw

PATCH 2/2 void unregister_chrdev - make void

unregister_chrdev() does not return meaningful value. This patch makes it return void like most of unregister_* functions.

---
 fs/char_dev.c      |    3 +--
 include/linux/fs.h |    2 +-
 2 files changed, 2 insertions(+), 3 deletions(-)
fs/char_dev.c +1 -2
Index: 2.6-mm/fs/char_dev.c
===================================================================
@@ -321,14 +321,13 @@ void unregister_chrdev_region(dev_t from
 	}
 }
 
-int unregister_chrdev(unsigned int major, const char *name)
+void unregister_chrdev(unsigned int major, const char *name)
 {
 	struct char_device_struct *cd;
 	cd = __unregister_chrdev_region(major, 0, 256);
 	if (cd && cd->cdev)
 		cdev_del(cd->cdev);
 	kfree(cd);
-	return 0;
 }
 
 static DEFINE_SPINLOCK(cdev_lock);
include/linux/fs.h +1 -1
Index: 2.6-mm/include/linux/fs.h
===================================================================
@@ -1593,7 +1593,7 @@ extern int alloc_chrdev_region(dev_t *, 
 extern int register_chrdev_region(dev_t, unsigned, const char *);
 extern int register_chrdev(unsigned int, const char *,
 			   const struct file_operations *);
-extern int unregister_chrdev(unsigned int, const char *);
+extern void unregister_chrdev(unsigned int, const char *);
 extern void unregister_chrdev_region(dev_t, unsigned);
 extern int chrdev_open(struct inode *, struct file *);
 extern void chrdev_show(struct seq_file *,off_t);