Re: [PATCH] crypto: arm64/gcm - remove Wunused-const-variable ghash_cpu_feature

From: Austin Kim
Date: Fri May 28 2021 - 09:51:46 EST


2021년 5월 28일 (금) 오전 2:46, Eric Biggers <ebiggers@xxxxxxxxxx>님이 작성:
>
> 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