The patch titled input: check whether serio dirver registration is completed has been added to the -mm tree. Its filename is input-check-whether-serio-dirver-registration-is-completed.patch See http://www.zip.com.au/~akpm/linux/patches/stuff/added-to-mm.txt to find out what to do about this ------------------------------------------------------ Subject: input: check whether serio dirver registration is completed From: Akinobu Mita <akinobu.mita@xxxxxxxxx> This patch adds a flag to serio driver indicating whether registration is complete and check that flag in serio_unregister_driver. Cc: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx> Signed-off-by: Akinobu Mita <akinobu.mita@xxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxx> --- drivers/input/serio/serio.c | 7 ++++++- include/linux/serio.h | 1 + 2 files changed, 7 insertions(+), 1 deletion(-) diff -puN drivers/input/serio/serio.c~input-check-whether-serio-dirver-registration-is-completed drivers/input/serio/serio.c --- a/drivers/input/serio/serio.c~input-check-whether-serio-dirver-registration-is-completed +++ a/drivers/input/serio/serio.c @@ -797,6 +797,8 @@ static void serio_add_driver(struct seri printk(KERN_ERR "serio: driver_register() failed for %s, error: %d\n", drv->driver.name, error); + else + drv->registered = 1; } int __serio_register_driver(struct serio_driver *drv, struct module *owner) @@ -823,7 +825,10 @@ start_over: } } - driver_unregister(&drv->driver); + if (drv->registered) { + driver_unregister(&drv->driver); + drv->registered = 0; + } mutex_unlock(&serio_mutex); } diff -puN include/linux/serio.h~input-check-whether-serio-dirver-registration-is-completed include/linux/serio.h --- a/include/linux/serio.h~input-check-whether-serio-dirver-registration-is-completed +++ a/include/linux/serio.h @@ -68,6 +68,7 @@ struct serio_driver { void (*cleanup)(struct serio *); struct device_driver driver; + int registered; }; #define to_serio_driver(d) container_of(d, struct serio_driver, driver) _ Patches currently in -mm which might be from akinobu.mita@xxxxxxxxx are acpi-fix-single-linked-list-manipulation.patch debugfs-check-return-value-correctly.patch git-input.patch input-make-serio_register_driver-return-error.patch input-check-serio_register_driver-error.patch input-check-whether-serio-dirver-registration-is-completed.patch input-change-to-gfp_kernel-for-serio_register_driver-event-allocation.patch git-mtd.patch gss_spkm3-fix-error-handling-in-module-init.patch auth_gss-unregister-gss_domain-when-unloading-module.patch auth_gss-unregister-gss_domain-when-unloading-module-fix.patch git-pcmcia.patch pci-fix-__pci_register_driver-error-handling.patch acpiphp-fix-missing-acpiphp_glue_exit.patch acpiphp-fix-use-of-list_for_each-macro.patch git-watchdog.patch paride-return-proper-error-code.patch bit-revese-library.patch crc32-replace-bitreverse-by-bitrev32.patch video-use-bitrev8.patch net-use-bitrev8.patch isdn-hisax-use-bitrev8.patch atm-ambassador-use-bitrev8.patch isdn-gigaset-use-bitrev8.patch isdn-fix-missing-unregister_capi_driver.patch fault-injection-documentation-and-scripts.patch fault-injection-capabilities-infrastructure.patch fault-injection-capabilities-infrastructure-tidy.patch fault-injection-capabilities-infrastructure-tweaks.patch fault-injection-capability-for-kmalloc.patch fault-injection-capability-for-alloc_pages.patch fault-injection-capability-for-disk-io.patch fault-injection-process-filtering-for-fault-injection-capabilities.patch fault-injection-stacktrace-filtering.patch fault-injection-Kconfig-cleanup.patch - To unsubscribe from this list: send the line "unsubscribe mm-commits" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html