Commit 50aa870b authored by Paolo Bonzini's avatar Paolo Bonzini
Browse files

selftests: kvm: move declaration at the beginning of main()



Placing a declaration of evt_reset is pedantically invalid
according to the C standard.  While GCC does not really care
and only warns with -Wpedantic, clang ignores the declaration
altogether with an error:

x86_64/xen_shinfo_test.c:965:2: error: expected expression
        struct kvm_xen_hvm_attr evt_reset = {
        ^
x86_64/xen_shinfo_test.c:969:38: error: use of undeclared identifier evt_reset
        vm_ioctl(vm, KVM_XEN_HVM_SET_ATTR, &evt_reset);
                                            ^

Reported-by: default avatarYu Zhang <yu.c.zhang@linux.intel.com>
Reported-by: default avatarSean Christopherson <seanjc@google.com>
Fixes: a79b53aa ("KVM: x86: fix deadlock for KVM_XEN_EVTCHN_RESET", 2022-12-28)
Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
parent d732cbf7
Loading
Loading
Loading
Loading
+3 −4
Original line number Diff line number Diff line
@@ -434,6 +434,7 @@ static void *juggle_shinfo_state(void *arg)
int main(int argc, char *argv[])
{
	struct timespec min_ts, max_ts, vm_ts;
	struct kvm_xen_hvm_attr evt_reset;
	struct kvm_vm *vm;
	pthread_t thread;
	bool verbose;
@@ -962,10 +963,8 @@ int main(int argc, char *argv[])
	}

 done:
	struct kvm_xen_hvm_attr evt_reset = {
		.type = KVM_XEN_ATTR_TYPE_EVTCHN,
		.u.evtchn.flags = KVM_XEN_EVTCHN_RESET,
	};
	evt_reset.type = KVM_XEN_ATTR_TYPE_EVTCHN;
	evt_reset.u.evtchn.flags = KVM_XEN_EVTCHN_RESET;
	vm_ioctl(vm, KVM_XEN_HVM_SET_ATTR, &evt_reset);

	alarm(0);