From: Henrique de Moraes Holschuh on
On Tue, 12 Jan 2010, Ren� Bolldorf wrote:
> Hi,
> Do we really need this?
> It will be nice if someone can me explain this.

http://kernelnewbies.org/FAQ/InitExitMacros

--
"One disk to rule them all, One disk to find them. One disk to bring
them all and in the darkness grind them. In the Land of Redmond
where the shadows lie." -- The Silicon Valley Tarot
Henrique Holschuh
--
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: Tilman Schmidt on
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Am 2010-01-13 00:42 schrieb Henrique de Moraes Holschuh:
> On Tue, 12 Jan 2010, Ren� Bolldorf wrote:
>> Hi,
>> Do we really need this?
>> It will be nice if someone can me explain this.
>
> http://kernelnewbies.org/FAQ/InitExitMacros

That's far from complete. It does not, for example, mention __devinit.

- --
Tilman Schmidt E-Mail: tilman(a)imap.cc
Bonn, Germany
Diese Nachricht besteht zu 100% aus wiederverwerteten Bits.
Unge�ffnet mindestens haltbar bis: (siehe R�ckseite)
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.12 (MingW32)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAktNsOMACgkQQ3+did9BuFtfrwCfUO+z1SWLRs97+lrfp6FjC61a
dzwAnR02pQ+qAdSN58YEh1kL8BwoRwqz
=z9Hb
-----END PGP SIGNATURE-----
--
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: Stefan Richter on
Tilman Schmidt wrote:
> Am 2010-01-13 00:42 schrieb Henrique de Moraes Holschuh:
>> On Tue, 12 Jan 2010, Ren� Bolldorf wrote:
>>> Hi,
>>> Do we really need this?
>>> It will be nice if someone can me explain this.
>>
>> http://kernelnewbies.org/FAQ/InitExitMacros
>
> That's far from complete. It does not, for example, mention __devinit.

This wiki contains also somewhat misleadingly worded text: "But why
must you use these macros ?" This should read: "But why would you want
to use these macros?"

Answer: They are a micro-optimization which allows the kernel to free
memory that was occupied by this code at some point, because that code
won't be used after that point anymore. (In case of exit macros: These
are hints to discard some code from a build in case of certain kernel
configurations.) These macros only affect code which is statically
linked into the kernel.

Some macros, like for example __devinit, have so obscure uses and
marginal benefits that a normal developer should not bother about them.
__devinit in particular does not have any effect at all --- except if
CONFIG_HOTPLUG is not defined. This may happen in configurations for
embedded systems. But the majority of device drivers that you can find
in the kernel tree are irrelevant (i.e. configured off) on such systems
anyway.

Some more information on these macros can be found in Corbet, Rubini,
Kroah-Hartman: Linux Device Drivers, 3rd edition a.k.a. LDD3, which is
also gratis available on the Web.
--
Stefan Richter
-=====-==-=- ---= -==-=
http://arcgraph.de/sr/
--
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: René Bolldorf on
On 01/13/10 17:37, Stefan Richter wrote:
> Tilman Schmidt wrote:
>> Am 2010-01-13 00:42 schrieb Henrique de Moraes Holschuh:
>>> On Tue, 12 Jan 2010, Ren� Bolldorf wrote:
>>>> Hi,
>>>> Do we really need this?
>>>> It will be nice if someone can me explain this.
>>>
>>> http://kernelnewbies.org/FAQ/InitExitMacros
>>
>> That's far from complete. It does not, for example, mention __devinit.
>
> This wiki contains also somewhat misleadingly worded text: "But why
> must you use these macros ?" This should read: "But why would you want
> to use these macros?"
>
> Answer: They are a micro-optimization which allows the kernel to free
> memory that was occupied by this code at some point, because that code
> won't be used after that point anymore. (In case of exit macros: These
> are hints to discard some code from a build in case of certain kernel
> configurations.) These macros only affect code which is statically
> linked into the kernel.
>
> Some macros, like for example __devinit, have so obscure uses and
> marginal benefits that a normal developer should not bother about them.
> __devinit in particular does not have any effect at all --- except if
> CONFIG_HOTPLUG is not defined. This may happen in configurations for
> embedded systems. But the majority of device drivers that you can find
> in the kernel tree are irrelevant (i.e. configured off) on such systems
> anyway.
>
> Some more information on these macros can be found in Corbet, Rubini,
> Kroah-Hartman: Linux Device Drivers, 3rd edition a.k.a. LDD3, which is
> also gratis available on the Web.

Thanks @all :-)
--
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/
 | 
Pages: 1
Prev: dlopen in kernel mode
Next: (none)