Message ID | 1484582811-3505-1-git-send-email-hofrat@osadl.org (mailing list archive) |
---|---|
State | Changes Requested |
Delegated to: | Herbert Xu |
Headers | show |
On Mon, Jan 16, 2017 at 05:06:51PM +0100, Nicholas Mc Guire wrote: > Add declarations for the camellia substitution box to allow a clean build. > > Signed-off-by: Nicholas Mc Guire <hofrat@osadl.org> > --- > Problem reported by sparse > arch/x86/crypto/camellia_glue.c:65:21: warning: symbol 'camellia_sp10011110' was not declared. Should it be static? > arch/x86/crypto/camellia_glue.c:154:21: warning: symbol 'camellia_sp22000222' was not declared. Should it be static? > arch/x86/crypto/camellia_glue.c:243:21: warning: symbol 'camellia_sp03303033' was not declared. Should it be static? > arch/x86/crypto/camellia_glue.c:332:21: warning: symbol 'camellia_sp00444404' was not declared. Should it be static? > arch/x86/crypto/camellia_glue.c:421:21: warning: symbol 'camellia_sp02220222' was not declared. Should it be static? > arch/x86/crypto/camellia_glue.c:510:21: warning: symbol 'camellia_sp30333033' was not declared. Should it be static? > arch/x86/crypto/camellia_glue.c:599:21: warning: symbol 'camellia_sp44044404' was not declared. Should it be static? > arch/x86/crypto/camellia_glue.c:688:21: warning: symbol 'camellia_sp11101110' was not declared. Should it be static? > > Patch was compile tested with: x86_64_defconfig + > CONFIG_CRYPTO_CAMELLIA_X86_64=m > > Patch is against 4.10-rc3 (localversion-next is next-20170116) This is arguably a sparse bug. These variables are only referenced by assembly code and already carries the __visible tag. So sparse should learn to suppress this warning when __visible is present. Thanks,
On Mon, Jan 23, 2017 at 10:02:37PM +0800, Herbert Xu wrote: > On Mon, Jan 16, 2017 at 05:06:51PM +0100, Nicholas Mc Guire wrote: > > Add declarations for the camellia substitution box to allow a clean build. > > > > Signed-off-by: Nicholas Mc Guire <hofrat@osadl.org> > > --- > > Problem reported by sparse > > arch/x86/crypto/camellia_glue.c:65:21: warning: symbol 'camellia_sp10011110' was not declared. Should it be static? > > arch/x86/crypto/camellia_glue.c:154:21: warning: symbol 'camellia_sp22000222' was not declared. Should it be static? > > arch/x86/crypto/camellia_glue.c:243:21: warning: symbol 'camellia_sp03303033' was not declared. Should it be static? > > arch/x86/crypto/camellia_glue.c:332:21: warning: symbol 'camellia_sp00444404' was not declared. Should it be static? > > arch/x86/crypto/camellia_glue.c:421:21: warning: symbol 'camellia_sp02220222' was not declared. Should it be static? > > arch/x86/crypto/camellia_glue.c:510:21: warning: symbol 'camellia_sp30333033' was not declared. Should it be static? > > arch/x86/crypto/camellia_glue.c:599:21: warning: symbol 'camellia_sp44044404' was not declared. Should it be static? > > arch/x86/crypto/camellia_glue.c:688:21: warning: symbol 'camellia_sp11101110' was not declared. Should it be static? > > > > Patch was compile tested with: x86_64_defconfig + > > CONFIG_CRYPTO_CAMELLIA_X86_64=m > > > > Patch is against 4.10-rc3 (localversion-next is next-20170116) > > This is arguably a sparse bug. These variables are only referenced > by assembly code and already carries the __visible tag. So sparse > should learn to suppress this warning when __visible is present. I had assumed that __visible only would apply to LTO not to non-LTO builds so the externally_visible attributed would not resolve this and thus this warning seems correct. Is this interpretation incorect ? thx! hofrat -- To unsubscribe from this list: send the line "unsubscribe linux-crypto" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/arch/x86/include/asm/crypto/camellia.h b/arch/x86/include/asm/crypto/camellia.h index bb93333..1cb98f2 100644 --- a/arch/x86/include/asm/crypto/camellia.h +++ b/arch/x86/include/asm/crypto/camellia.h @@ -10,6 +10,15 @@ #define CAMELLIA_TABLE_BYTE_LEN 272 #define CAMELLIA_PARALLEL_BLOCKS 2 +extern const u64 camellia_sp10011110[256]; +extern const u64 camellia_sp22000222[256]; +extern const u64 camellia_sp03303033[256]; +extern const u64 camellia_sp00444404[256]; +extern const u64 camellia_sp02220222[256]; +extern const u64 camellia_sp30333033[256]; +extern const u64 camellia_sp44044404[256]; +extern const u64 camellia_sp11101110[256]; + struct camellia_ctx { u64 key_table[CAMELLIA_TABLE_BYTE_LEN / sizeof(u64)]; u32 key_length;
Add declarations for the camellia substitution box to allow a clean build. Signed-off-by: Nicholas Mc Guire <hofrat@osadl.org> --- Problem reported by sparse arch/x86/crypto/camellia_glue.c:65:21: warning: symbol 'camellia_sp10011110' was not declared. Should it be static? arch/x86/crypto/camellia_glue.c:154:21: warning: symbol 'camellia_sp22000222' was not declared. Should it be static? arch/x86/crypto/camellia_glue.c:243:21: warning: symbol 'camellia_sp03303033' was not declared. Should it be static? arch/x86/crypto/camellia_glue.c:332:21: warning: symbol 'camellia_sp00444404' was not declared. Should it be static? arch/x86/crypto/camellia_glue.c:421:21: warning: symbol 'camellia_sp02220222' was not declared. Should it be static? arch/x86/crypto/camellia_glue.c:510:21: warning: symbol 'camellia_sp30333033' was not declared. Should it be static? arch/x86/crypto/camellia_glue.c:599:21: warning: symbol 'camellia_sp44044404' was not declared. Should it be static? arch/x86/crypto/camellia_glue.c:688:21: warning: symbol 'camellia_sp11101110' was not declared. Should it be static? Patch was compile tested with: x86_64_defconfig + CONFIG_CRYPTO_CAMELLIA_X86_64=m Patch is against 4.10-rc3 (localversion-next is next-20170116) arch/x86/include/asm/crypto/camellia.h | 9 +++++++++ 1 file changed, 9 insertions(+)