lkml.org 
[lkml]   [2021]   [Aug]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
Subject[intel-tdx:guest 70/113] include/linux/protected_guest.h:53:12: error: dereferencing pointer to incomplete type 'struct device'
tree:   https://github.com/intel/tdx.git guest
head: 44e41606b85b08fad5378c876547f8557f835cf6
commit: b3bb395b4eaa3d107b203d30dcf6dcc6d1d2fa29 [70/113] mm: Add prot_guest_authorized() interface
config: i386-allyesconfig (attached as .config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce (this is a W=1 build):
# https://github.com/intel/tdx/commit/b3bb395b4eaa3d107b203d30dcf6dcc6d1d2fa29
git remote add intel-tdx https://github.com/intel/tdx.git
git fetch --no-tags intel-tdx guest
git checkout b3bb395b4eaa3d107b203d30dcf6dcc6d1d2fa29
# save the attached .config to linux build tree
mkdir build_dir
make W=1 O=build_dir ARCH=i386 SHELL=/bin/bash arch/x86/

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

All error/warnings (new ones prefixed by >>):

In file included from arch/x86/include/asm/io.h:43,
from arch/x86/include/asm/dma.h:13,
from include/linux/memblock.h:14,
from arch/x86/kernel/head32.c:12:
include/linux/protected_guest.h: In function 'prot_guest_authorized':
>> include/linux/protected_guest.h:53:12: error: dereferencing pointer to incomplete type 'struct device'
53 | return dev->authorized;
| ^~
arch/x86/kernel/head32.c: At top level:
arch/x86/kernel/head32.c:72:13: warning: no previous prototype for 'mk_early_pgtbl_32' [-Wmissing-prototypes]
72 | void __init mk_early_pgtbl_32(void)
| ^~~~~~~~~~~~~~~~~
--
In file included from arch/x86/include/asm/io.h:43,
from arch/x86/include/asm/dma.h:13,
from include/linux/memblock.h:14,
from arch/x86/kernel/ebda.c:4:
include/linux/protected_guest.h: In function 'prot_guest_authorized':
>> include/linux/protected_guest.h:53:12: error: dereferencing pointer to incomplete type 'struct device'
53 | return dev->authorized;
| ^~
--
In file included from arch/x86/include/asm/io.h:43,
from arch/x86/include/asm/bios_ebda.h:5,
from arch/x86/kernel/platform-quirks.c:6:
include/linux/protected_guest.h: In function 'prot_guest_authorized':
>> include/linux/protected_guest.h:53:12: error: dereferencing pointer to incomplete type 'struct device'
53 | return dev->authorized;
| ^~
arch/x86/kernel/platform-quirks.c: At top level:
arch/x86/kernel/platform-quirks.c:42:13: warning: no previous prototype for 'arch_pnpbios_disabled' [-Wmissing-prototypes]
42 | bool __init arch_pnpbios_disabled(void)
| ^~~~~~~~~~~~~~~~~~~~~
--
In file included from arch/x86/include/asm/io.h:43,
from include/linux/io.h:13,
from include/linux/irq.h:20,
from arch/x86/kernel/kvm.c:14:
include/linux/protected_guest.h: In function 'prot_guest_authorized':
>> include/linux/protected_guest.h:53:12: error: dereferencing pointer to incomplete type 'struct device'
53 | return dev->authorized;
| ^~
arch/x86/kernel/kvm.c: At top level:
arch/x86/kernel/kvm.c:896:16: warning: no previous prototype for '__kvm_vcpu_is_preempted' [-Wmissing-prototypes]
896 | __visible bool __kvm_vcpu_is_preempted(long cpu)
| ^~~~~~~~~~~~~~~~~~~~~~~
--
In file included from arch/x86/include/asm/io.h:43,
from arch/x86/include/asm/dma.h:13,
from include/linux/memblock.h:14,
from arch/x86/mm/ioremap.c:10:
include/linux/protected_guest.h: In function 'prot_guest_authorized':
>> include/linux/protected_guest.h:53:12: error: dereferencing pointer to incomplete type 'struct device'
53 | return dev->authorized;
| ^~
arch/x86/mm/ioremap.c: At top level:
arch/x86/mm/ioremap.c:759:17: warning: no previous prototype for 'early_memremap_pgprot_adjust' [-Wmissing-prototypes]
759 | pgprot_t __init early_memremap_pgprot_adjust(resource_size_t phys_addr,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
--
In file included from arch/x86/include/asm/io.h:43,
from include/linux/clocksource.h:22,
from include/clocksource/hyperv_timer.h:16,
from arch/x86/include/asm/vdso/gettimeofday.h:21,
from include/vdso/datapage.h:137,
from arch/x86/entry/vdso/vdso32/../../../../../lib/vdso/gettimeofday.c:5,
from arch/x86/entry/vdso/vdso32/../vclock_gettime.c:15,
from arch/x86/entry/vdso/vdso32/vclock_gettime.c:29:
include/linux/protected_guest.h: In function 'prot_guest_authorized':
>> include/linux/protected_guest.h:53:12: error: dereferencing pointer to incomplete type 'struct device'
53 | return dev->authorized;
| ^~
In file included from arch/x86/entry/vdso/vdso32/vclock_gettime.c:29:
arch/x86/entry/vdso/vdso32/../vclock_gettime.c: At top level:
arch/x86/entry/vdso/vdso32/../vclock_gettime.c:70:5: warning: no previous prototype for '__vdso_clock_gettime64' [-Wmissing-prototypes]
70 | int __vdso_clock_gettime64(clockid_t clock, struct __kernel_timespec *ts)
| ^~~~~~~~~~~~~~~~~~~~~~
--
In file included from arch/x86/include/asm/io.h:43,
from arch/x86/include/asm/dma.h:13,
from include/linux/memblock.h:14,
from arch/x86/platform/olpc/olpc_dt.c:16:
include/linux/protected_guest.h: In function 'prot_guest_authorized':
>> include/linux/protected_guest.h:53:12: error: dereferencing pointer to incomplete type 'struct device'
53 | return dev->authorized;
| ^~
arch/x86/platform/olpc/olpc_dt.c: In function 'olpc_dt_compatible_match':
arch/x86/platform/olpc/olpc_dt.c:222:12: warning: variable 'len' set but not used [-Wunused-but-set-variable]
222 | int plen, len;
| ^~~
arch/x86/platform/olpc/olpc_dt.c: At top level:
arch/x86/platform/olpc/olpc_dt.c:237:13: warning: no previous prototype for 'olpc_dt_fixup' [-Wmissing-prototypes]
237 | void __init olpc_dt_fixup(void)
| ^~~~~~~~~~~~~
--
In file included from arch/x86/include/asm/io.h:43,
from include/linux/io.h:13,
from include/linux/cs5535.h:119,
from arch/x86/platform/olpc/olpc-xo1-pm.c:11:
include/linux/protected_guest.h: In function 'prot_guest_authorized':
>> include/linux/protected_guest.h:53:12: error: dereferencing pointer to incomplete type 'struct device'
53 | return dev->authorized;
| ^~
arch/x86/platform/olpc/olpc-xo1-pm.c: At top level:
arch/x86/platform/olpc/olpc-xo1-pm.c:73:26: warning: no previous prototype for 'xo1_do_sleep' [-Wmissing-prototypes]
73 | asmlinkage __visible int xo1_do_sleep(u8 sleep_state)
| ^~~~~~~~~~~~
--
In file included from arch/x86/include/asm/io.h:43,
from include/linux/mc146818rtc.h:14,
from arch/x86/platform/olpc/olpc-xo1-rtc.c:8:
>> include/linux/protected_guest.h:51:49: warning: 'struct device' declared inside parameter list will not be visible outside of this definition or declaration
51 | static inline bool prot_guest_authorized(struct device *dev, char *dev_str)
| ^~~~~~
include/linux/protected_guest.h: In function 'prot_guest_authorized':
>> include/linux/protected_guest.h:53:12: error: dereferencing pointer to incomplete type 'struct device'
53 | return dev->authorized;
| ^~
--
In file included from arch/x86/include/asm/io.h:43,
from include/linux/io.h:13,
from include/linux/cs5535.h:119,
from arch/x86/platform/olpc/olpc-xo1-sci.c:10:
include/linux/protected_guest.h: In function 'prot_guest_authorized':
>> include/linux/protected_guest.h:53:12: error: dereferencing pointer to incomplete type 'struct device'
53 | return dev->authorized;
| ^~
arch/x86/platform/olpc/olpc-xo1-sci.c: In function 'setup_sci_interrupt':
arch/x86/platform/olpc/olpc-xo1-sci.c:316:6: warning: variable 'sts' set but not used [-Wunused-but-set-variable]
316 | u32 sts;
| ^~~


vim +53 include/linux/protected_guest.h

40
41 /*
42 * prot_guest_authorized() - Used to get ARCH specific authorized status of
43 * given device.
44 * @dev - device structure
45 * @dev_str - device search string (for PCI bus it is vendor:device, other
46 * bus device may use dev_name(dev))
47 *
48 * Return True to allow the device or False to deny it.
49 *
50 */
> 51 static inline bool prot_guest_authorized(struct device *dev, char *dev_str)
52 {
> 53 return dev->authorized;
54 }
55

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
[unhandled content-type:application/gzip]
\
 
 \ /
  Last update: 2021-08-27 12:11    [W:0.029 / U:0.424 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site