[<prev] [next>] [day] [month] [year] [list]
Message-ID: <202207191649.MYYZt4sP-lkp@intel.com>
Date: Tue, 19 Jul 2022 16:16:09 +0800
From: kernel test robot <lkp@...el.com>
To: Michael Roth <michael.roth@....com>
Cc: kbuild-all@...ts.01.org, linux-kernel@...r.kernel.org,
Paolo Bonzini <pbonzini@...hat.com>
Subject: include/kvm_util_base.h:247:35: warning: 'struct kvm_nested_state'
declared inside parameter list will not be visible outside of this
definition or declaration
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: ca85855bdcae8f84f1512e88b4c75009ea17ea2f
commit: 7d9a662ed9f0403e7b94940dceb81552b8edb931 kvm: selftests: move base kvm_util.h declarations to kvm_util_base.h
date: 6 months ago
reproduce: make O=/tmp/kselftest -C tools/testing/selftests
If you fix the issue, kindly add following tag where applicable
Reported-by: kernel test robot <lkp@...el.com>
All warnings (new ones prefixed by >>):
In file included from include/kvm_util.h:10,
from lib/elf.c:13:
>> include/kvm_util_base.h:247:35: warning: 'struct kvm_nested_state' declared inside parameter list will not be visible outside of this definition or declaration
247 | struct kvm_nested_state *state);
| ^~~~~~~~~~~~~~~~
include/kvm_util_base.h:249:34: warning: 'struct kvm_nested_state' declared inside parameter list will not be visible outside of this definition or declaration
249 | struct kvm_nested_state *state, bool ignore_error);
| ^~~~~~~~~~~~~~~~
--
In file included from include/kvm_util.h:10,
from lib/kvm_util.c:10:
>> include/kvm_util_base.h:247:35: warning: 'struct kvm_nested_state' declared inside parameter list will not be visible outside of this definition or declaration
247 | struct kvm_nested_state *state);
| ^~~~~~~~~~~~~~~~
include/kvm_util_base.h:249:34: warning: 'struct kvm_nested_state' declared inside parameter list will not be visible outside of this definition or declaration
249 | struct kvm_nested_state *state, bool ignore_error);
| ^~~~~~~~~~~~~~~~
lib/kvm_util.c: In function 'vm_enable_dirty_ring':
lib/kvm_util.c:143:19: error: 'KVM_CAP_DIRTY_LOG_RING' undeclared (first use in this function); did you mean 'KVM_CAP_IRQ_ROUTING'?
143 | cap.cap = KVM_CAP_DIRTY_LOG_RING;
| ^~~~~~~~~~~~~~~~~~~~~~
| KVM_CAP_IRQ_ROUTING
lib/kvm_util.c:143:19: note: each undeclared identifier is reported only once for each function it appears in
lib/kvm_util.c: In function 'kvm_vm_clear_dirty_log':
lib/kvm_util.c:468:16: error: variable 'args' has initializer but incomplete type
468 | struct kvm_clear_dirty_log args = { .dirty_bitmap = log, .slot = slot,
| ^~~~~~~~~~~~~~~~~~~
lib/kvm_util.c:468:46: error: 'struct kvm_clear_dirty_log' has no member named 'dirty_bitmap'
468 | struct kvm_clear_dirty_log args = { .dirty_bitmap = log, .slot = slot,
| ^~~~~~~~~~~~
lib/kvm_util.c:468:61: warning: excess elements in struct initializer
468 | struct kvm_clear_dirty_log args = { .dirty_bitmap = log, .slot = slot,
| ^~~
lib/kvm_util.c:468:61: note: (near initialization for 'args')
lib/kvm_util.c:468:67: error: 'struct kvm_clear_dirty_log' has no member named 'slot'
468 | struct kvm_clear_dirty_log args = { .dirty_bitmap = log, .slot = slot,
| ^~~~
lib/kvm_util.c:468:74: warning: excess elements in struct initializer
468 | struct kvm_clear_dirty_log args = { .dirty_bitmap = log, .slot = slot,
| ^~~~
lib/kvm_util.c:468:74: note: (near initialization for 'args')
lib/kvm_util.c:469:46: error: 'struct kvm_clear_dirty_log' has no member named 'first_page'
469 | .first_page = first_page,
| ^~~~~~~~~~
lib/kvm_util.c:469:59: warning: excess elements in struct initializer
469 | .first_page = first_page,
| ^~~~~~~~~~
lib/kvm_util.c:469:59: note: (near initialization for 'args')
lib/kvm_util.c:470:46: error: 'struct kvm_clear_dirty_log' has no member named 'num_pages'
470 | .num_pages = num_pages };
| ^~~~~~~~~
lib/kvm_util.c:470:58: warning: excess elements in struct initializer
470 | .num_pages = num_pages };
| ^~~~~~~~~
lib/kvm_util.c:470:58: note: (near initialization for 'args')
lib/kvm_util.c:468:36: error: storage size of 'args' isn't known
468 | struct kvm_clear_dirty_log args = { .dirty_bitmap = log, .slot = slot,
| ^~~~
lib/kvm_util.c:473:29: error: 'KVM_CLEAR_DIRTY_LOG' undeclared (first use in this function); did you mean 'KVM_GET_DIRTY_LOG'?
473 | ret = ioctl(vm->fd, KVM_CLEAR_DIRTY_LOG, &args);
| ^~~~~~~~~~~~~~~~~~~
| KVM_GET_DIRTY_LOG
lib/kvm_util.c:468:36: warning: unused variable 'args' [-Wunused-variable]
468 | struct kvm_clear_dirty_log args = { .dirty_bitmap = log, .slot = slot,
| ^~~~
lib/kvm_util.c: In function 'kvm_vm_reset_dirty_ring':
lib/kvm_util.c:480:30: error: 'KVM_RESET_DIRTY_RINGS' undeclared (first use in this function); did you mean 'KVM_GET_DIRTY_LOG'?
480 | return ioctl(vm->fd, KVM_RESET_DIRTY_RINGS);
| ^~~~~~~~~~~~~~~~~~~~~
| KVM_GET_DIRTY_LOG
lib/kvm_util.c: At top level:
lib/kvm_util.c:1748:35: warning: 'struct kvm_nested_state' declared inside parameter list will not be visible outside of this definition or declaration
1748 | struct kvm_nested_state *state)
| ^~~~~~~~~~~~~~~~
lib/kvm_util.c:1747:6: error: conflicting types for 'vcpu_nested_state_get'; have 'void(struct kvm_vm *, uint32_t, struct kvm_nested_state *)' {aka 'void(struct kvm_vm *, unsigned int, struct kvm_nested_state *)'}
1747 | void vcpu_nested_state_get(struct kvm_vm *vm, uint32_t vcpuid,
| ^~~~~~~~~~~~~~~~~~~~~
In file included from include/kvm_util.h:10,
from lib/kvm_util.c:10:
include/kvm_util_base.h:246:6: note: previous declaration of 'vcpu_nested_state_get' with type 'void(struct kvm_vm *, uint32_t, struct kvm_nested_state *)' {aka 'void(struct kvm_vm *, unsigned int, struct kvm_nested_state *)'}
246 | void vcpu_nested_state_get(struct kvm_vm *vm, uint32_t vcpuid,
| ^~~~~~~~~~~~~~~~~~~~~
lib/kvm_util.c: In function 'vcpu_nested_state_get':
lib/kvm_util.c:1755:31: error: 'KVM_GET_NESTED_STATE' undeclared (first use in this function); did you mean 'KVM_GET_MP_STATE'?
1755 | ret = ioctl(vcpu->fd, KVM_GET_NESTED_STATE, state);
| ^~~~~~~~~~~~~~~~~~~~
| KVM_GET_MP_STATE
lib/kvm_util.c: At top level:
lib/kvm_util.c:1762:34: warning: 'struct kvm_nested_state' declared inside parameter list will not be visible outside of this definition or declaration
1762 | struct kvm_nested_state *state, bool ignore_error)
| ^~~~~~~~~~~~~~~~
lib/kvm_util.c:1761:5: error: conflicting types for 'vcpu_nested_state_set'; have 'int(struct kvm_vm *, uint32_t, struct kvm_nested_state *, _Bool)' {aka 'int(struct kvm_vm *, unsigned int, struct kvm_nested_state *, _Bool)'}
1761 | int vcpu_nested_state_set(struct kvm_vm *vm, uint32_t vcpuid,
| ^~~~~~~~~~~~~~~~~~~~~
In file included from include/kvm_util.h:10,
from lib/kvm_util.c:10:
include/kvm_util_base.h:248:5: note: previous declaration of 'vcpu_nested_state_set' with type 'int(struct kvm_vm *, uint32_t, struct kvm_nested_state *, _Bool)' {aka 'int(struct kvm_vm *, unsigned int, struct kvm_nested_state *, _Bool)'}
248 | int vcpu_nested_state_set(struct kvm_vm *vm, uint32_t vcpuid,
| ^~~~~~~~~~~~~~~~~~~~~
lib/kvm_util.c: In function 'vcpu_nested_state_set':
lib/kvm_util.c:1769:31: error: 'KVM_SET_NESTED_STATE' undeclared (first use in this function); did you mean 'KVM_SET_MP_STATE'?
1769 | ret = ioctl(vcpu->fd, KVM_SET_NESTED_STATE, state);
| ^~~~~~~~~~~~~~~~~~~~
| KVM_SET_MP_STATE
lib/kvm_util.c: In function 'vcpu_map_dirty_ring':
lib/kvm_util.c:1926:45: error: 'KVM_DIRTY_LOG_PAGE_OFFSET' undeclared (first use in this function); did you mean 'KVM_PIO_PAGE_OFFSET'?
1926 | vm->page_size * KVM_DIRTY_LOG_PAGE_OFFSET);
| ^~~~~~~~~~~~~~~~~~~~~~~~~
| KVM_PIO_PAGE_OFFSET
lib/kvm_util.c:1940:56: error: invalid application of 'sizeof' to incomplete type 'struct kvm_dirty_gfn'
1940 | vcpu->dirty_gfns_count = size / sizeof(struct kvm_dirty_gfn);
| ^~~~~~
--
In file included from include/x86_64/../kvm_util.h:10,
from include/x86_64/processor.h:16,
from include/x86_64/apic.h:13,
from lib/x86_64/apic.c:8:
>> include/x86_64/../kvm_util_base.h:247:35: warning: 'struct kvm_nested_state' declared inside parameter list will not be visible outside of this definition or declaration
247 | struct kvm_nested_state *state);
| ^~~~~~~~~~~~~~~~
include/x86_64/../kvm_util_base.h:249:34: warning: 'struct kvm_nested_state' declared inside parameter list will not be visible outside of this definition or declaration
249 | struct kvm_nested_state *state, bool ignore_error);
| ^~~~~~~~~~~~~~~~
--
In file included from include/kvm_util.h:10,
from lib/x86_64/processor.c:9:
>> include/kvm_util_base.h:247:35: warning: 'struct kvm_nested_state' declared inside parameter list will not be visible outside of this definition or declaration
247 | struct kvm_nested_state *state);
| ^~~~~~~~~~~~~~~~
include/kvm_util_base.h:249:34: warning: 'struct kvm_nested_state' declared inside parameter list will not be visible outside of this definition or declaration
249 | struct kvm_nested_state *state, bool ignore_error);
| ^~~~~~~~~~~~~~~~
lib/x86_64/processor.c:1029:41: error: field 'nested' has incomplete type
1029 | struct kvm_nested_state nested;
| ^~~~~~
lib/x86_64/processor.c: In function 'vcpu_save_state':
lib/x86_64/processor.c:1081:45: error: 'KVM_CAP_NESTED_STATE' undeclared (first use in this function); did you mean 'KVM_CAP_PIT_STATE2'?
1081 | nested_size = kvm_check_cap(KVM_CAP_NESTED_STATE);
| ^~~~~~~~~~~~~~~~~~~~
| KVM_CAP_PIT_STATE2
lib/x86_64/processor.c:1081:45: note: each undeclared identifier is reported only once for each function it appears in
lib/x86_64/processor.c:1131:37: error: 'KVM_GET_NESTED_STATE' undeclared (first use in this function); did you mean 'KVM_GET_MP_STATE'?
1131 | r = ioctl(vcpu->fd, KVM_GET_NESTED_STATE, &state->nested);
| ^~~~~~~~~~~~~~~~~~~~
| KVM_GET_MP_STATE
lib/x86_64/processor.c: In function 'vcpu_load_state':
lib/x86_64/processor.c:1195:37: error: 'KVM_SET_NESTED_STATE' undeclared (first use in this function); did you mean 'KVM_SET_MP_STATE'?
1195 | r = ioctl(vcpu->fd, KVM_SET_NESTED_STATE, &state->nested);
| ^~~~~~~~~~~~~~~~~~~~
| KVM_SET_MP_STATE
lib/x86_64/processor.c: In function 'kvm_get_supported_hv_cpuid':
lib/x86_64/processor.c:1381:29: error: 'KVM_GET_SUPPORTED_HV_CPUID' undeclared (first use in this function); did you mean 'KVM_GET_SUPPORTED_CPUID'?
1381 | ret = ioctl(kvm_fd, KVM_GET_SUPPORTED_HV_CPUID, cpuid);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
| KVM_GET_SUPPORTED_CPUID
lib/x86_64/processor.c: In function 'vcpu_get_supported_hv_cpuid':
lib/x86_64/processor.c:1430:32: error: 'KVM_GET_SUPPORTED_HV_CPUID' undeclared (first use in this function); did you mean 'KVM_GET_SUPPORTED_CPUID'?
1430 | vcpu_ioctl(vm, vcpuid, KVM_GET_SUPPORTED_HV_CPUID, cpuid);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
| KVM_GET_SUPPORTED_CPUID
--
In file included from include/kvm_util.h:10,
from lib/x86_64/vmx.c:9:
>> include/kvm_util_base.h:247:35: warning: 'struct kvm_nested_state' declared inside parameter list will not be visible outside of this definition or declaration
247 | struct kvm_nested_state *state);
| ^~~~~~~~~~~~~~~~
include/kvm_util_base.h:249:34: warning: 'struct kvm_nested_state' declared inside parameter list will not be visible outside of this definition or declaration
249 | struct kvm_nested_state *state, bool ignore_error);
| ^~~~~~~~~~~~~~~~
lib/x86_64/vmx.c: In function 'vcpu_enable_evmcs':
lib/x86_64/vmx.c:51:24: error: 'KVM_CAP_HYPERV_ENLIGHTENED_VMCS' undeclared (first use in this function)
51 | .cap = KVM_CAP_HYPERV_ENLIGHTENED_VMCS,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
lib/x86_64/vmx.c:51:24: note: each undeclared identifier is reported only once for each function it appears in
--
0-DAY CI Kernel Test Service
https://01.org/lkp
Powered by blists - more mailing lists