2004-11-22 16:30:29

by Adrian Bunk

[permalink] [raw]
Subject: [2.6 patch] MODULE_PARM_: remove the __deprecated

Hi Rusty,

I know you will not like this patch, but I consider it important since
the current beghavior is pretty annoying.

When making patches here and there, I'm touching many different places
in the kernel. One of the advantages of the 2.6 build system is that
warnings are very visible - and often a new compile warning indicates
that something with the patch is wrong.

MODULE_PARM_ might be deprecated.
But there are still over 2000 places in the kernel where it's used.
I consider it _very_ annoying if after changing the kernel, the whole
screen is swamped with warnings that MODULE_PARM_ is deprecated as it
still happens in several subsystems. That's quite annoying if you want
to check whether changing a common header file has any negative effects.

This is not generally against using __deprecated, but currently
MODULE_PARM_ generates so many warnings that it's really no fun.


Signed-off-by: Adrian Bunk <[email protected]>

--- linux-2.6.10-rc2-mm3-modular/include/linux/module.h.old 2004-11-22 15:51:17.000000000 +0100
+++ linux-2.6.10-rc2-mm3-modular/include/linux/module.h 2004-11-22 15:53:29.000000000 +0100
@@ -559,7 +559,7 @@
void *addr;
};

-static inline void __deprecated MODULE_PARM_(void) { }
+static inline void MODULE_PARM_(void) { }
#ifdef MODULE
/* DEPRECATED: Do not use. */
#define MODULE_PARM(var,type) \


2004-11-22 20:20:49

by Rusty Russell

[permalink] [raw]
Subject: Re: [2.6 patch] MODULE_PARM_: remove the __deprecated

On Mon, 2004-11-22 at 16:56 +0100, Adrian Bunk wrote:
> Hi Rusty,
>
> I know you will not like this patch, but I consider it important since
> the current beghavior is pretty annoying.

Damn straight. But I never intended this to happen; this patch was one
of a series.

I went through and fixed up many of them but naturally such a patch was
fragile, huge, and even broke some stuff.

As a result, Andrew dropped the patch, which is fair, but leaves us with
the current state.

I'll go through those patches again today and resent against -mm.

Rusty.
--
A bad analogy is like a leaky screwdriver -- Richard Braakman

2004-11-23 05:47:57

by Lee Revell

[permalink] [raw]
Subject: Re: [2.6 patch] MODULE_PARM_: remove the __deprecated

On Mon, 2004-11-22 at 16:56 +0100, Adrian Bunk wrote:
> MODULE_PARM_ might be deprecated.
> But there are still over 2000 places in the kernel where it's used.

Changing MODULE_PARM to module_param is not exactly rocket science. You
could probably fix them all with a perl script.

Lee

2004-11-23 10:44:08

by Jim Nelson

[permalink] [raw]
Subject: Re: [2.6 patch] MODULE_PARM_: remove the __deprecated

Lee Revell wrote:
> On Mon, 2004-11-22 at 16:56 +0100, Adrian Bunk wrote:
>
>>MODULE_PARM_ might be deprecated.
>>But there are still over 2000 places in the kernel where it's used.
>
>
> Changing MODULE_PARM to module_param is not exactly rocket science. You
> could probably fix them all with a perl script.
>
> Lee
>

Not really. The permissions for the sysfs files, if nothing else, have to be done
manually. Plus, check out:

http://lists.osdl.org/pipermail/kernel-janitors/2004-November/002559.html

and

http://lists.osdl.org/pipermail/kernel-janitors/2004-November/002592.html

for two examples of the kinds of problems that a script would run into. Not
rocket science, but it can be tricky.

Jim

2004-11-23 20:07:44

by Lee Revell

[permalink] [raw]
Subject: Re: [2.6 patch] MODULE_PARM_: remove the __deprecated

On Tue, 2004-11-23 at 05:44 -0500, Jim Nelson wrote:
> Lee Revell wrote:
> > On Mon, 2004-11-22 at 16:56 +0100, Adrian Bunk wrote:
> >
> >>MODULE_PARM_ might be deprecated.
> >>But there are still over 2000 places in the kernel where it's used.
> >
> >
> > Changing MODULE_PARM to module_param is not exactly rocket science. You
> > could probably fix them all with a perl script.
> >
> > Lee
> >
>
> Not really. The permissions for the sysfs files, if nothing else, have to be done
> manually. Plus, check out:
>

Well for every complex example like yours there is one like this:

http://lkml.org/lkml/2004/10/08/253

You would have to check the results of course.

Lee