[OpenAFS-devel] Re: 2.6.16 linux and d_cache
Jeffrey Hutzelman
jhutz@cmu.edu
Tue, 28 Feb 2006 15:27:22 -0500
On Tuesday, February 28, 2006 09:24:21 AM -0500 chas williams - CONTRACTOR
<chas@cmf.nrl.navy.mil> wrote:
> In message <4403BC22.7010801@cs.wisc.edu>,Marc Dionne writes:
>>>> libafs: falsely claims to have parameter sys_call_table_addr
>>>
>>> i guess i would just ignore this. it means that afs couldnt find
>>> the bits it needs for pag support. this broken on later kernels
>>> when the sys_call_table became read only and "unpatchable".
>>
>> Can't ignore it, since it causes the module load to fail.
>
> well i was wrong with my guess. it looks like its a MODULE_PARM
> in the osi_probe code. i guess something has changed in the
> later kernels about how you handle module parameters. it
> seems you should use module_param() instead of MODULE_PARAM().
My guess is that the message results from the fact that MODULE_PARM() has
been deprecated in favor of module_param(), but MODULE_PARM_DESC() is still
valid. So, we're providing a description for a parameter that doesn't
actually exist.
Of course, no one could ever want to have a module which builds against
more than one version of Linux, so backwards compatibility in interfaces is
unimportant. Thus, we must change our calls to MODULE_PARM into calls to
module_param and give up the ability to build against older kernels.
Or, of course, we could add yet another test against LINUX_VERSION_CODE...
-- Jeff