On Thu, 2013-07-18 at 05:50 +0900, Tetsuo Handa wrote: > Tim Chen wrote: > > > Therefore, I think possible solutions are either > > > > > > (a) built-in the dependent modules > > > > > > # grep crc /lib/modules/3.11.0-rc1+/modules.dep > > > kernel/drivers/scsi/sd_mod.ko: kernel/lib/crc-t10dif.ko > > > kernel/lib/crc-t10dif.ko: > > > > This approach will increase kernel size for those who are not using > > t10dif so some people may object. > > BTW, The PCLMULQDQ version does not need to be build in. > > sd_mod.ko must choose one from versions available as of loading sd_mod.ko. > Although it is not needed to built-in the PCLMULQDQ version for fixing the boot > failure, it is needed to built-in the PCLMULQDQ version for getting performance > improvement when PCLMULQDQ is supported. > > > Your approach is quite complicated. I think something simpler like the > > following will work: > > We cannot benefit from PCLMULQDQ. Is it acceptable for you? The following code in crct10dif-pclmul_glue.c static const struct x86_cpu_id crct10dif_cpu_id[] = { X86_FEATURE_MATCH(X86_FEATURE_PCLMULQDQ), {} }; MODULE_DEVICE_TABLE(x86cpu, crct10dif_cpu_id); will put the module in the device table and get the module loaded, as long as the cpu support PCLMULQDQ. So we should be able to benefit. Tim -- To unsubscribe from this list: send the line "unsubscribe linux-crypto" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html