aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexey Dobriyan <adobriyan@gmail.com>2006-12-06 20:36:21 -0800
committerLinus Torvalds <torvalds@woody.osdl.org>2006-12-07 08:39:33 -0800
commitb4178ab58aa81f4ed3c75c48940682fe3b45d880 (patch)
treed9bd5827ee1f9a36bf9958a56760f6206272cc2f
parentf4330002d11f032559954cbff68a5cad95b6d27f (diff)
downloadkernel_samsung_aries-b4178ab58aa81f4ed3c75c48940682fe3b45d880.zip
kernel_samsung_aries-b4178ab58aa81f4ed3c75c48940682fe3b45d880.tar.gz
kernel_samsung_aries-b4178ab58aa81f4ed3c75c48940682fe3b45d880.tar.bz2
[PATCH] paride_register(): shuffle return values
paride_register() returns 1 on success, 0 on failure and module init code looks like static int __init foo_init(void) { return paride_register(&foo) - 1; } which is not what one get used to. Converted to usual 0/-E convention. In case of kbic driver, unwind registration. It was just return (paride_register(&k951)||paride_register(&k971))-1; Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-rw-r--r--drivers/block/paride/aten.c2
-rw-r--r--drivers/block/paride/bpck.c2
-rw-r--r--drivers/block/paride/bpck6.c2
-rw-r--r--drivers/block/paride/comm.c2
-rw-r--r--drivers/block/paride/dstr.c2
-rw-r--r--drivers/block/paride/epat.c2
-rw-r--r--drivers/block/paride/epia.c2
-rw-r--r--drivers/block/paride/fit2.c2
-rw-r--r--drivers/block/paride/fit3.c2
-rw-r--r--drivers/block/paride/friq.c2
-rw-r--r--drivers/block/paride/frpw.c2
-rw-r--r--drivers/block/paride/kbic.c10
-rw-r--r--drivers/block/paride/ktti.c2
-rw-r--r--drivers/block/paride/on20.c2
-rw-r--r--drivers/block/paride/on26.c2
-rw-r--r--drivers/block/paride/paride.c6
16 files changed, 26 insertions, 18 deletions
diff --git a/drivers/block/paride/aten.c b/drivers/block/paride/aten.c
index 3539099..2695465 100644
--- a/drivers/block/paride/aten.c
+++ b/drivers/block/paride/aten.c
@@ -149,7 +149,7 @@ static struct pi_protocol aten = {
static int __init aten_init(void)
{
- return paride_register(&aten)-1;
+ return paride_register(&aten);
}
static void __exit aten_exit(void)
diff --git a/drivers/block/paride/bpck.c b/drivers/block/paride/bpck.c
index b0df16d..4f27e73 100644
--- a/drivers/block/paride/bpck.c
+++ b/drivers/block/paride/bpck.c
@@ -464,7 +464,7 @@ static struct pi_protocol bpck = {
static int __init bpck_init(void)
{
- return paride_register(&bpck)-1;
+ return paride_register(&bpck);
}
static void __exit bpck_exit(void)
diff --git a/drivers/block/paride/bpck6.c b/drivers/block/paride/bpck6.c
index 7c04f74..da6b5d2 100644
--- a/drivers/block/paride/bpck6.c
+++ b/drivers/block/paride/bpck6.c
@@ -265,7 +265,7 @@ static int __init bpck6_init(void)
printk(KERN_INFO "bpck6: Copyright 2001 by Micro Solutions, Inc., DeKalb IL. USA\n");
if(verbose)
printk(KERN_DEBUG "bpck6: verbose debug enabled.\n");
- return paride_register(&bpck6) - 1;
+ return paride_register(&bpck6);
}
static void __exit bpck6_exit(void)
diff --git a/drivers/block/paride/comm.c b/drivers/block/paride/comm.c
index c3d4076..9bcd354 100644
--- a/drivers/block/paride/comm.c
+++ b/drivers/block/paride/comm.c
@@ -205,7 +205,7 @@ static struct pi_protocol comm = {
static int __init comm_init(void)
{
- return paride_register(&comm)-1;
+ return paride_register(&comm);
}
static void __exit comm_exit(void)
diff --git a/drivers/block/paride/dstr.c b/drivers/block/paride/dstr.c
index 2e4219e..accc5c7 100644
--- a/drivers/block/paride/dstr.c
+++ b/drivers/block/paride/dstr.c
@@ -220,7 +220,7 @@ static struct pi_protocol dstr = {
static int __init dstr_init(void)
{
- return paride_register(&dstr)-1;
+ return paride_register(&dstr);
}
static void __exit dstr_exit(void)
diff --git a/drivers/block/paride/epat.c b/drivers/block/paride/epat.c
index 5ed4fc1..1bcdff7 100644
--- a/drivers/block/paride/epat.c
+++ b/drivers/block/paride/epat.c
@@ -327,7 +327,7 @@ static int __init epat_init(void)
#ifdef CONFIG_PARIDE_EPATC8
epatc8 = 1;
#endif
- return paride_register(&epat)-1;
+ return paride_register(&epat);
}
static void __exit epat_exit(void)
diff --git a/drivers/block/paride/epia.c b/drivers/block/paride/epia.c
index 649766c..fb0e782 100644
--- a/drivers/block/paride/epia.c
+++ b/drivers/block/paride/epia.c
@@ -303,7 +303,7 @@ static struct pi_protocol epia = {
static int __init epia_init(void)
{
- return paride_register(&epia)-1;
+ return paride_register(&epia);
}
static void __exit epia_exit(void)
diff --git a/drivers/block/paride/fit2.c b/drivers/block/paride/fit2.c
index 7a16249..3812837 100644
--- a/drivers/block/paride/fit2.c
+++ b/drivers/block/paride/fit2.c
@@ -138,7 +138,7 @@ static struct pi_protocol fit2 = {
static int __init fit2_init(void)
{
- return paride_register(&fit2)-1;
+ return paride_register(&fit2);
}
static void __exit fit2_exit(void)
diff --git a/drivers/block/paride/fit3.c b/drivers/block/paride/fit3.c
index c701577..275d269 100644
--- a/drivers/block/paride/fit3.c
+++ b/drivers/block/paride/fit3.c
@@ -198,7 +198,7 @@ static struct pi_protocol fit3 = {
static int __init fit3_init(void)
{
- return paride_register(&fit3)-1;
+ return paride_register(&fit3);
}
static void __exit fit3_exit(void)
diff --git a/drivers/block/paride/friq.c b/drivers/block/paride/friq.c
index e9edfa2..4f2ba24 100644
--- a/drivers/block/paride/friq.c
+++ b/drivers/block/paride/friq.c
@@ -263,7 +263,7 @@ static struct pi_protocol friq = {
static int __init friq_init(void)
{
- return paride_register(&friq)-1;
+ return paride_register(&friq);
}
static void __exit friq_exit(void)
diff --git a/drivers/block/paride/frpw.c b/drivers/block/paride/frpw.c
index 407f821..c3cde36 100644
--- a/drivers/block/paride/frpw.c
+++ b/drivers/block/paride/frpw.c
@@ -300,7 +300,7 @@ static struct pi_protocol frpw = {
static int __init frpw_init(void)
{
- return paride_register(&frpw)-1;
+ return paride_register(&frpw);
}
static void __exit frpw_exit(void)
diff --git a/drivers/block/paride/kbic.c b/drivers/block/paride/kbic.c
index a563281..35999c4 100644
--- a/drivers/block/paride/kbic.c
+++ b/drivers/block/paride/kbic.c
@@ -283,7 +283,15 @@ static struct pi_protocol k971 = {
static int __init kbic_init(void)
{
- return (paride_register(&k951)||paride_register(&k971))-1;
+ int rv;
+
+ rv = paride_register(&k951);
+ if (rv < 0)
+ return rv;
+ rv = paride_register(&k971);
+ if (rv < 0)
+ paride_unregister(&k951);
+ return rv;
}
static void __exit kbic_exit(void)
diff --git a/drivers/block/paride/ktti.c b/drivers/block/paride/ktti.c
index a9d85be..117ab0e 100644
--- a/drivers/block/paride/ktti.c
+++ b/drivers/block/paride/ktti.c
@@ -115,7 +115,7 @@ static struct pi_protocol ktti = {
static int __init ktti_init(void)
{
- return paride_register(&ktti)-1;
+ return paride_register(&ktti);
}
static void __exit ktti_exit(void)
diff --git a/drivers/block/paride/on20.c b/drivers/block/paride/on20.c
index cc7e9f59..0173697 100644
--- a/drivers/block/paride/on20.c
+++ b/drivers/block/paride/on20.c
@@ -140,7 +140,7 @@ static struct pi_protocol on20 = {
static int __init on20_init(void)
{
- return paride_register(&on20)-1;
+ return paride_register(&on20);
}
static void __exit on20_exit(void)
diff --git a/drivers/block/paride/on26.c b/drivers/block/paride/on26.c
index 8755ce4..95ba256 100644
--- a/drivers/block/paride/on26.c
+++ b/drivers/block/paride/on26.c
@@ -306,7 +306,7 @@ static struct pi_protocol on26 = {
static int __init on26_init(void)
{
- return paride_register(&on26)-1;
+ return paride_register(&on26);
}
static void __exit on26_exit(void)
diff --git a/drivers/block/paride/paride.c b/drivers/block/paride/paride.c
index 55cabfb..e4c55e0 100644
--- a/drivers/block/paride/paride.c
+++ b/drivers/block/paride/paride.c
@@ -237,19 +237,19 @@ int paride_register(PIP * pr)
if (protocols[k] && !strcmp(pr->name, protocols[k]->name)) {
printk("paride: %s protocol already registered\n",
pr->name);
- return 0;
+ return -1;
}
k = 0;
while ((k < MAX_PROTOS) && (protocols[k]))
k++;
if (k == MAX_PROTOS) {
printk("paride: protocol table full\n");
- return 0;
+ return -1;
}
protocols[k] = pr;
pr->index = k;
printk("paride: %s registered as protocol %d\n", pr->name, k);
- return 1;
+ return 0;
}
EXPORT_SYMBOL(paride_register);