]> git.baikalelectronics.ru Git - kernel.git/commit
[PATCH] hp300: fix driver_register() return handling, remove dio_module_init()
authorBjorn Helgaas <bjorn.helgaas@hp.com>
Sat, 25 Mar 2006 11:07:17 +0000 (03:07 -0800)
committerLinus Torvalds <torvalds@g5.osdl.org>
Sat, 25 Mar 2006 16:22:53 +0000 (08:22 -0800)
commit8bef14a62a71d8b61fdb258c3acc80c9c00fcb24
tree403e22aa86b4a24699df7cc1285ab915ec3eda1a
parent30853e36ec454f07bb15a94f018cfc9b9d4f80cf
[PATCH] hp300: fix driver_register() return handling, remove dio_module_init()

Remove the assumption that driver_register() returns the number of devices
bound to the driver.  In fact, it returns zero for success or a negative
error value.

dio_module_init() used the device count to automatically unregister and
unload drivers that found no devices.  That might have worked at one time,
but has been broken for some time because dio_register_driver() returned
either a negative error or a positive count (never zero).  So it could only
unregister on failure, when it's not needed anyway.

This functionality could be resurrected in individual drivers by counting
devices in their .probe() methods.

Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com>
Cc: Philip Blundell <philb@gnu.org>
Cc: Jochen Friedrich <jochen@scram.de>
Cc: "Antonino A. Daplas" <adaplas@pol.net>
Cc: Jeff Garzik <jeff@garzik.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
drivers/dio/dio-driver.c
drivers/net/hplance.c
drivers/serial/8250_hp300.c
drivers/video/hpfb.c
include/linux/dio.h