Hi Corentin, On Mon, Nov 05, 2018 at 12:51:10PM +0000, Corentin Labbe wrote: > Even if CRYPTO_STATS is set to n, some part of CRYPTO_STATS are > compiled. > This patch made all part of crypto_user_stat uncompiled in that case. > > Signed-off-by: Corentin Labbe <clabbe@xxxxxxxxxxxx> > --- > crypto/Makefile | 3 ++- > crypto/algapi.c | 2 ++ > include/crypto/internal/cryptouser.h | 17 +++++++++++++++++ > include/linux/crypto.h | 2 ++ > 4 files changed, 23 insertions(+), 1 deletion(-) > > diff --git a/crypto/Makefile b/crypto/Makefile > index 5c207c76abf7..1e9e5960946a 100644 > --- a/crypto/Makefile > +++ b/crypto/Makefile > @@ -54,7 +54,8 @@ cryptomgr-y := algboss.o testmgr.o > > obj-$(CONFIG_CRYPTO_MANAGER2) += cryptomgr.o > obj-$(CONFIG_CRYPTO_USER) += crypto_user.o > -crypto_user-y := crypto_user_base.o crypto_user_stat.o > +crypto_user-y := crypto_user_base.o > +crypto_user-$(CONFIG_CRYPTO_STATS) += crypto_user_stat.o > obj-$(CONFIG_CRYPTO_CMAC) += cmac.o > obj-$(CONFIG_CRYPTO_HMAC) += hmac.o > obj-$(CONFIG_CRYPTO_VMAC) += vmac.o Doesn't CONFIG_CRYPTO_STATS also need to depend on CONFIG_CRYPTO_USER? Currently you can enable it but without CRYPTO_USER the API won't be available. config CRYPTO_STATS bool "Crypto usage statistics for User-space" should be: config CRYPTO_STATS bool "Crypto usage statistics for User-space" depends on CRYPTO_USER > diff --git a/include/linux/crypto.h b/include/linux/crypto.h > index 3634ad6fe202..35de61d99cd5 100644 > --- a/include/linux/crypto.h > +++ b/include/linux/crypto.h > @@ -515,6 +515,7 @@ struct crypto_alg { > > struct module *cra_module; > > +#ifdef CONFIG_CRYPTO_STATS > union { > atomic_t encrypt_cnt; > atomic_t compress_cnt; > @@ -552,6 +553,7 @@ struct crypto_alg { > atomic_t compute_shared_secret_cnt; > }; > atomic_t sign_cnt; > +#endif This is a long ifdef, so use: #endif /* CONFIG_CRYPTO_STATS */ - Eric