On Mon, May 25, 2020 at 11:23:04AM +0200, Borislav Petkov wrote: > Enabling this gives: > > In file included from arch/x86/kernel/cpu/sgx/main.c:11: > arch/x86/kernel/cpu/sgx/encls.h:189:51: warning: ‘struct sgx_einittoken’ declared inside parameter list will not be visible outside of this definition or declaration > 189 | static inline int __einit(void *sigstruct, struct sgx_einittoken *einittoken, > | ^~~~~~~~~~~~~~ > In file included from arch/x86/kernel/cpu/sgx/reclaim.c:12: > arch/x86/kernel/cpu/sgx/encls.h:189:51: warning: ‘struct sgx_einittoken’ declared inside parameter list will not be visible outside of this definition or declaration > 189 | static inline int __einit(void *sigstruct, struct sgx_einittoken *einittoken, > | > > You need a forward declaration somewhere. It is a left-over from v28 and should be "void *". To backtrack what happened it looks that I squashed the change that does this to "x86/sgx: Linux Enclave Driver". This is fixed now in my tree. /Jarkko