[intel-tdx:guest 72/113] arch/x86/include/asm/tdx.h:185:12: error: incomplete definition of type 'struct device'

From: kernel test robot
Date: Fri Aug 27 2021 - 20:03:14 EST


tree: https://github.com/intel/tdx.git guest
head: 44e41606b85b08fad5378c876547f8557f835cf6
commit: 3ccbeb49c9e01c731e46e8238cd8851be8365c15 [72/113] x86/tdx: Add device filter support for x86 TDX guest platform
config: i386-randconfig-r001-20210827 (attached as .config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 1076082a0d97bd5c16a25ee7cf3dbb6ee4b5a9fe)
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# https://github.com/intel/tdx/commit/3ccbeb49c9e01c731e46e8238cd8851be8365c15
git remote add intel-tdx https://github.com/intel/tdx.git
git fetch --no-tags intel-tdx guest
git checkout 3ccbeb49c9e01c731e46e8238cd8851be8365c15
# save the attached .config to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross O=build_dir ARCH=i386 SHELL=/bin/bash

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@xxxxxxxxx>

All errors (new ones prefixed by >>):

In file included from drivers/misc/vmw_balloon.c:20:
In file included from include/linux/io.h:13:
In file included from arch/x86/include/asm/io.h:43:
include/linux/protected_guest.h:52:49: warning: declaration of 'struct device' will not be visible outside of this function [-Wvisibility]
static inline bool prot_guest_authorized(struct device *dev, char *dev_str)
^
include/linux/protected_guest.h:54:12: error: incomplete definition of type 'struct device'
return dev->authorized;
~~~^
include/linux/protected_guest.h:52:49: note: forward declaration of 'struct device'
static inline bool prot_guest_authorized(struct device *dev, char *dev_str)
^
In file included from drivers/misc/vmw_balloon.c:37:
In file included from arch/x86/include/asm/hypervisor.h:37:
In file included from arch/x86/include/asm/kvm_para.h:7:
>> arch/x86/include/asm/tdx.h:185:12: error: incomplete definition of type 'struct device'
return dev->authorized;
~~~^
include/linux/bitmap.h:13:8: note: forward declaration of 'struct device'
struct device;
^
1 warning and 2 errors generated.
--
In file included from arch/x86/kernel/kvm.c:14:
In file included from include/linux/irq.h:20:
In file included from include/linux/io.h:13:
In file included from arch/x86/include/asm/io.h:43:
include/linux/protected_guest.h:54:12: error: incomplete definition of type 'struct device'
return dev->authorized;
~~~^
include/linux/bitmap.h:13:8: note: forward declaration of 'struct device'
struct device;
^
In file included from arch/x86/kernel/kvm.c:16:
In file included from include/linux/kvm_para.h:5:
In file included from include/uapi/linux/kvm_para.h:37:
In file included from arch/x86/include/asm/kvm_para.h:7:
>> arch/x86/include/asm/tdx.h:185:12: error: incomplete definition of type 'struct device'
return dev->authorized;
~~~^
include/linux/bitmap.h:13:8: note: forward declaration of 'struct device'
struct device;
^
2 errors generated.
--
In file included from arch/x86/kernel/cpu/hypervisor.c:27:
In file included from arch/x86/include/asm/hypervisor.h:37:
In file included from arch/x86/include/asm/kvm_para.h:7:
>> arch/x86/include/asm/tdx.h:185:12: error: incomplete definition of type 'struct device'
return dev->authorized;
~~~^
include/linux/bitmap.h:13:8: note: forward declaration of 'struct device'
struct device;
^
In file included from arch/x86/kernel/cpu/hypervisor.c:27:
In file included from arch/x86/include/asm/hypervisor.h:37:
In file included from arch/x86/include/asm/kvm_para.h:9:
include/linux/protected_guest.h:54:12: error: incomplete definition of type 'struct device'
return dev->authorized;
~~~^
include/linux/bitmap.h:13:8: note: forward declaration of 'struct device'
struct device;
^
2 errors generated.


vim +185 arch/x86/include/asm/tdx.h

182
183 static inline bool tdx_guest_authorized(struct device *dev, char *dev_str)
184 {
> 185 return dev->authorized;
186 }
187

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@xxxxxxxxxxxx

Attachment: .config.gz
Description: application/gzip