[PATCH 2.6.17-rc3] Fix capi reload by unregistering the correct major
From: Stefan Schweizer
Date: Sat Apr 29 2006 - 13:41:24 EST
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hi,
I am having the bug
FATAL: Error inserting capi ([..]/capi.ko): Device or resource busy
when I try to reload capi after loading it.
in dmesg: capi20: unable to get major 68
I attached a patch to fix the issue which is caused by setting the major to
zero when registering the chrdev succeeded. Please apply
- - Stefan
errors in the dmesg:
CAPI Subsystem Rev 1.1.2.8
capifs: Rev 1.1.2.3
capi20: Rev 1.1.2.7: started up with major 0 (middleware+capifs)
<-- here you see that it was set to 0.
(after unload and retry)
capi: Rev 1.1.2.7: unloaded
CAPI Subsystem Rev 1.1.2.8
capi20: unable to get major 68
<-- the chrdev has not been unlinked
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.3 (GNU/Linux)
iD8DBQFEU6GBNJowsmZ/PzARArMZAJ9tfOoFGJ5wNd86DA15JiaZJFLsAQCfaYr7
9XF6cTgYU7Y9hzvGLgXkJqU=
=qvpL
-----END PGP SIGNATURE-------- drivers/isdn/capi/capi.c.orig 2006-04-29 18:40:25.000000000 +0200
+++ drivers/isdn/capi/capi.c 2006-04-29 18:27:22.000000000 +0200
@@ -1499,7 +1499,6 @@
printk(KERN_ERR "capi20: unable to get major %d\n", capi_major);
return major_ret;
}
- capi_major = major_ret;
capi_class = class_create(THIS_MODULE, "capi");
if (IS_ERR(capi_class)) {
unregister_chrdev(capi_major, "capi20");