From: Karsten Keil on
On Donnerstag, 25. M�rz 2010 13:05:29 Henrik Kretzschmar wrote:
> Compiling this driver gave a section mismatch,
> so I reviewed the init/exit paths of the driver
> and made the correct changes.
>
> WARNING: drivers/isdn/hisax/built-in.o(.text+0x558d6): Section mismatch
> in reference from the function sedlbauer_config() to the function
> .devinit.text:hisax_init_pcmcia()
> The function sedlbauer_config() references
> the function __devinit hisax_init_pcmcia().
> This is often because sedlbauer_config lacks a __devinit
> annotation or the annotation of hisax_init_pcmcia is wrong.
>
> Signed-off-by: Henrik Kretzschmar <henne(a)nachtwindheim.de>
Acked-by: <keil(a)b1-systems.de>

Thank you for fixing this.
l
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo(a)vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
From: Wolfram Sang on
Hi Henrik,

thanks for the work. Please, just keep the placement of those attributes
consistent. Otherwise it might be easy to miss:

> -static int sedlbauer_config(struct pcmcia_device *link);
> +static int sedlbauer_config(struct pcmcia_device *link) __devinit ;

Wrong.

> -static int sedlbauer_probe(struct pcmcia_device *link)
> +static int __devinit sedlbauer_probe(struct pcmcia_device *link)
> {

Right.

(I think checkpatch checks for this, too)

Regards,

Wolfram

--
Pengutronix e.K. | Wolfram Sang |
Industrial Linux Solutions | http://www.pengutronix.de/ |
From: Henrik Kretzschmar on
Wolfram Sang schrieb:
> Hi Henrik,
>
> thanks for the work. Please, just keep the placement of those attributes
> consistent. Otherwise it might be easy to miss:
>
>
>> -static int sedlbauer_config(struct pcmcia_device *link);
>> +static int sedlbauer_config(struct pcmcia_device *link) __devinit ;
>>
>
> Wrong.
>
>
>> -static int sedlbauer_probe(struct pcmcia_device *link)
>> +static int __devinit sedlbauer_probe(struct pcmcia_device *link)
>> {
>>
>
> Right.
>
> (I think checkpatch checks for this, too)
>
> Regards,
>
> Wolfram
>
Hi there,

Imho should these functions be reorderd, so that no prototypes are required in a driver file.
If somebody wishes, I would do that for those.

For the prototypes I was following init.h, heres a snippet:

* Usage:
* For functions:
*
* You should add __init immediately before the function name, like:
*
* static void __init initme(int x, int y)
* {
* extern int z; z = x * y;
* }
*
* If the function has a prototype somewhere, you can also add
* __init between closing brace of the prototype and semicolon:
*
* extern int initialize_foobar_device(int, int, int) __init;
*


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo(a)vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
From: Henrik Kretzschmar on
Wolfram Sang schrieb:

> Hi Henrik,
>
> thanks for the work. Please, just keep the placement of those attributes
> consistent. Otherwise it might be easy to miss:
>
>
>> -static int sedlbauer_config(struct pcmcia_device *link);
>> +static int sedlbauer_config(struct pcmcia_device *link) __devinit ;
>>
>
> Wrong.
>
>
>> -static int sedlbauer_probe(struct pcmcia_device *link)
>> +static int __devinit sedlbauer_probe(struct pcmcia_device *link)
>> {
>>
>
> Right.
>
> (I think checkpatch checks for this, too)
No, checkpatch doesn't claim about that.

Greets, Henrik

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo(a)vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
From: Wolfram Sang on

> Imho should these functions be reorderd, so that no prototypes are required
> in a driver file. If somebody wishes, I would do that for those.

I stand corrected, missed that for prototypes. Sorry for the noise.

--
Pengutronix e.K. | Wolfram Sang |
Industrial Linux Solutions | http://www.pengutronix.de/ |