Re: [RFC] [DRIVER MODEL] Make other buggy drivers warn

From: Russell King
Date: Sat Nov 05 2005 - 06:02:23 EST


Obviously just to provoke comment from these driver authors to point
out the error of their ways, and _not_ for merging.

diff -u b/drivers/net/depca.c b/drivers/net/depca.c
--- b/drivers/net/depca.c
+++ b/drivers/net/depca.c
@@ -2083,6 +2083,7 @@ static int __init depca_module_init (voi
err |= eisa_driver_register (&depca_eisa_driver);
#endif
err |= driver_register (&depca_isa_driver);
+#warning FIXME: what if one of the above registeration functions fails
depca_platform_probe ();

return err;
diff -u b/drivers/net/tokenring/proteon.c b/drivers/net/tokenring/proteon.c
--- b/drivers/net/tokenring/proteon.c
+++ b/drivers/net/tokenring/proteon.c
@@ -384,6 +384,7 @@ static int __init proteon_init(void)
/* Probe for cards. */
if (num == 0) {
printk(KERN_NOTICE "proteon.c: No cards found.\n");
+#warning FIXME: what about unregistering the platform driver?
return (-ENODEV);
}
return (0);
diff -u b/drivers/net/tokenring/skisa.c b/drivers/net/tokenring/skisa.c
--- b/drivers/net/tokenring/skisa.c
+++ b/drivers/net/tokenring/skisa.c
@@ -394,6 +394,7 @@ static int __init sk_isa_init(void)
/* Probe for cards. */
if (num == 0) {
printk(KERN_NOTICE "skisa.c: No cards found.\n");
+#warning FIXME: what about unregistering the platform driver?
return (-ENODEV);
}
return (0);
diff -u b/drivers/usb/gadget/dummy_hcd.c b/drivers/usb/gadget/dummy_hcd.c
--- b/drivers/usb/gadget/dummy_hcd.c
+++ b/drivers/usb/gadget/dummy_hcd.c
@@ -1981,9 +1981,11 @@
* statically allocated. */
static void
dummy_udc_release (struct device *dev) {}
+#warning FIXME: device release code in the module which unregisters the device is buggy

static void
dummy_hcd_release (struct device *dev) {}
+#warning FIXME: device release code in the module which unregisters the device is buggy

static struct platform_device the_udc_pdev = {
.name = (char *) gadget_name,
diff -u b/sound/core/init.c b/sound/core/init.c
--- b/sound/core/init.c
+++ b/sound/core/init.c
@@ -694,6 +694,7 @@

void snd_generic_device_release(struct device *dev)
{
+#warning FIXME: release functions must not be empty
}

static int snd_generic_device_register(snd_card_t *card)


--
Russell King
Linux kernel 2.6 ARM Linux - http://www.arm.linux.org.uk/
maintainer of: 2.6 Serial core
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/