MOD_INC_USE_COUNT usage
With the high risk of being flamed, I send this to LKML. Feel free to tell me not to if this is a huge no-no, and it won't happen again.
I was studying some of the warnings that appears when compiling 2.6.1-mm3, and one common warning is the MOD_INC_USE_COUNT macro being used. Apparently it's deprecated, but if that's the case, why is it still being used in the kernel?
I googled a bit and found a few discussions about the issue (mostly concerning the /mm-subsystem) where some people found it okay to just remove the call to MOD_INC_USE_COUNT totally, since it is totally unnecessary under 2.5 (and under 2.6 too, I presume). Since the discussions provided a lot of contradictions and no solution, I thought asking a question to someone who has an idea of what this is about might be a good thing.
I'm not asking you to remove this call, but I do want to know why it shouldn't be removed and what is being done to replace a function (or macro... whatever it is) that is deprecated. Any explanations would be gratefully accepted. Thank you.
Since I'm no kernel-hacker (and not much of a coder at all) don't expect me to understand a lot of jargon, but this question is being asked because I'm really interested in understanding the Linux kernel.
So, why shouldn't this patch be applied?:
ide/pci/generic.c 2003-11-24 13:54:01.000000000 +0100 renamed from ide/pci/generic.c.orig 2004-01-14 17:52:35.000000000 +0100 +0 -0
@@ -121,6 +121,7 @@ static int __devinit generic_init_one(st
return 1; } ide_setup_pci_device(dev, d); + MOD_INC_USE_COUNT; return 0;
}
Tim Cambrant
ide/pci/generic.c 2003-11-24 13:54:01.000000000 +0100 static int __devinit generic_init_one(st · line 126
Quoted 11 lines · Tim Cambrant
So, why shouldn't this patch be applied?:
ide/pci/generic.c 2003-11-24 13:54:01.000000000 +0100 renamed from ide/pci/generic.c.orig 2004-01-14 17:52:35.000000000 +0100 +1
-0@@ -121,6 +121,7 @@ static int __devinit generic_init_one(st return 1; } ide_setup_pci_device(dev, d); + MOD_INC_USE_COUNT; return 0; }
It isn't that easy - the module must be marked as being in use this way or (preferably) another.
Signature · 1 line
Krzysztof Halasa, B*FH
Quoted 4 lines · Krzysztof Halasa
Quoted 2 lines · Tim Cambrant
So, why shouldn't this patch be applied?:
Quoted 12 lines
ide/pci/generic.c 2003-11-24 13:54:01.000000000 +0100 static int __devinit generic_init_one(st · line 126
Quoted 9 lines
ide/pci/generic.c 2003-11-24 13:54:01.000000000 +0100 renamed from ide/pci/generic.c.orig 2004-01-14 17:52:35.000000000 +0100 +1
-0@@ -121,6 +121,7 @@ static int __devinit generic_init_one(st return 1; } ide_setup_pci_device(dev, d); + MOD_INC_USE_COUNT; return 0; }It isn't that easy - the module must be marked as being in use this way or (preferably) another.
Hello,
As I can see, this is really redundant to have a MOD_INC_USE_COUNT for almost all the modules. But this should be checked carefully before removing ;)
Signature · 1 line
umka