OK, I'm taking this approach.
> * if ether_crc is always == ether_crc_be, then create a
> #define instead of patching driver code
> * no need to inline ether_crc_be, stick it in lib/crc32.c also
> * using a ref-counting init_crc32 and cleanup_crc32
> obj-$(CONFIG_TULIP) += crc32.o
> obj-$(CONFIG_NATSEMI) += crc32.o
> obj-$(CONFIG_DMFE) += crc32.o
> obj-$(CONFIG_ANOTHERDRIVER) += crc32.o
Done. init_crc32() needs to be called from all drivers which call crc32()
or ether_crc_le(). I think I've got them added, but will verify and report
back after the weekend. For the curious, I've got one big patch with crc32,
GPT, efivars, and uuid stuff (separates pretty easily into multiple patches,
but for review now, it's just one).
-- Matt Domsch Sr. Software Engineer Dell Linux Solutions www.dell.com/linux #2 Linux Server provider with 17% in the US and 14% Worldwide (IDC)! #3 Unix provider with 18% in the US (Dataquest)! - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to email@example.com More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/