Message ID | 20210527062809.GA1251@raspberrypi |
---|---|
State | New |
Headers | show |
Series | crypto: arm64/gcm - remove Wunused-const-variable ghash_cpu_feature | expand |
2021년 5월 28일 (금) 오전 2:46, Eric Biggers <ebiggers@kernel.org>님이 작성: > > On Thu, May 27, 2021 at 07:28:09AM +0100, Austin Kim wrote: > > > > The variable with MODULE_DEVICE_TABLE() is registered as platform_driver. > > What does this mean? There is no platform_driver involved here at all. > What I would like to say is "in many cases, MODULE_DEVICE_TABLE is registered as struct of platform_driver" ex) [drivers/char/hw_random/meson-rng.c] MODULE_DEVICE_TABLE(of, meson_rng_of_match); static struct platform_driver meson_rng_driver = { .probe = meson_rng_probe, .driver = { .name = "meson-rng", .of_match_table = meson_rng_of_match, }, }; > > But ghash_cpu_feature is not used, so remove ghash_cpu_feature. > > It is used when the file is built as a module. > Thanks for the information. But it looks like this file is compiled as built-in with 'CONFIG_CRYPTO_GHASH_ARM64_CE=y' by default. > > diff --git a/arch/arm64/crypto/ghash-ce-glue.c b/arch/arm64/crypto/ghash-ce-glue.c > > index 720cd3a58da3..c3f27d0d5329 100644 >>[...] > > Probably adding __maybe_unused to ghash_cpu_feature[] is the right thing to do. > That's what module_cpu_feature_match() does. > > (Note that module_cpu_feature_match() can't be used here, as it seems the intent > is for this module to be autoloaded when PMULL is detected, but still be > loadable without it. So, that's apparently the reason for using > MODULE_DEVICE_TABLE() directly.) Thanks for the valuable idea and feedback. > > - Eric
diff --git a/arch/arm64/crypto/ghash-ce-glue.c b/arch/arm64/crypto/ghash-ce-glue.c index 720cd3a58da3..c3f27d0d5329 100644 --- a/arch/arm64/crypto/ghash-ce-glue.c +++ b/arch/arm64/crypto/ghash-ce-glue.c @@ -615,10 +615,5 @@ static void __exit ghash_ce_mod_exit(void) crypto_unregister_shash(&ghash_alg); } -static const struct cpu_feature ghash_cpu_feature[] = { - { cpu_feature(PMULL) }, { } -}; -MODULE_DEVICE_TABLE(cpu, ghash_cpu_feature); - module_init(ghash_ce_mod_init); module_exit(ghash_ce_mod_exit);
GCC compiler complains with below messages. warning: ‘ghash_cpu_feature’ defined but not used [-Wunused-const-variable=] static const struct cpu_feature ghash_cpu_feature[] = { ^~~~~~~~~~~~~~~~~ The variable with MODULE_DEVICE_TABLE() is registered as platform_driver. But ghash_cpu_feature is not used, so remove ghash_cpu_feature. Signed-off-by: Austin Kim <austindh.kim@gmail.com> --- arch/arm64/crypto/ghash-ce-glue.c | 5 ----- 1 file changed, 5 deletions(-)