Re: crc32 cleanups

Andi Kleen
2001-10-13T10:02:04Z

In article <Pine.LNX.4.30.0110131131200.32076-100000@stud.fbi.fh-darmstadt.de>,
Jan-Marek Glogowski <glogow@stud.fbi.fh-darmstadt.de> writes:
> Comments

Just use the existing linker features. Link the crc code as an .a library.
If some code needs it it'll get included. If it needs initialization
use the existing __initcall() setup. It'll generate a call to the
initialization function when it is linked in, and none if it is not.

[Note that __initcall may be a bit tricky here if some other __initcall
user like an ethernet driver needs crc32 too; there is unfortunately no
priority mechanism in __initcall to enforce that the crc32 init runs before
the other initcalls. best would probably just to use a static table to avoid
this issue]

-Andi