qemu/target/i386/kvm
David Woodhouse 19c417ec87 i386/xen: consistent locking around Xen singleshot timers
Coverity points out (CID 1507534, 1507968) that we sometimes access
env->xen_singleshot_timer_ns under the protection of
env->xen_timers_lock and sometimes not.

This isn't always an issue. There are two modes for the timers; if the
kernel supports the EVTCHN_SEND capability then it handles all the timer
hypercalls and delivery internally, and all we use the field for is to
get/set the timer as part of the vCPU state via an ioctl(). If the
kernel doesn't have that support, then we do all the emulation within
qemu, and *those* are the code paths where we actually care about the
locking.

But it doesn't hurt to be a little bit more consistent and avoid having
to explain *why* it's OK.

Signed-off-by: David Woodhouse <dwmw@amazon.co.uk>
Reviewed-by: Paul Durrant <paul@xen.org>
Message-Id: <20230801175747.145906-3-dwmw2@infradead.org>
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
2023-08-01 23:52:23 +02:00
..
hyperv-proto.h i386: Hyper-V Direct TLB flush hypercall 2022-05-25 21:26:35 +02:00
hyperv-stub.c hyperv: Add support to process syndbg commands 2022-04-06 14:31:56 +02:00
hyperv.c hyperv: fix SynIC SINT assertion failure on guest reset 2022-10-18 13:58:04 +02:00
hyperv.h i386: move kvm accel files into kvm/ 2020-12-16 14:06:52 -05:00
kvm_i386.h hw/xen: Support MSI mapping to PIRQ 2023-03-01 09:09:22 +00:00
kvm-cpu.c target/i386: Fix sanity check on max APIC ID / X2APIC enablement 2022-05-16 04:38:39 -04:00
kvm-cpu.h i386: split cpu accelerators from cpu.c, using AccelCPUClass 2021-05-10 15:41:49 -04:00
kvm-stub.c target/i386: Set maximum APIC ID to KVM prior to vCPU creation 2022-10-31 09:46:34 +01:00
kvm.c target/i386: Allow MCDT_NO if host supports 2023-07-07 12:52:27 +02:00
meson.build meson: Replace softmmu_ss -> system_ss 2023-06-20 10:01:30 +02:00
sev-stub.c Remove qemu-common.h include from most units 2022-04-06 14:31:55 +02:00
trace-events i386/xen: implement HVMOP_set_evtchn_upcall_vector 2023-03-01 08:22:50 +00:00
trace.h i386: move kvm accel files into kvm/ 2020-12-16 14:06:52 -05:00
xen-compat.h i386/xen: Implement HYPERVISOR_physdev_op 2023-03-01 09:08:26 +00:00
xen-emu.c i386/xen: consistent locking around Xen singleshot timers 2023-08-01 23:52:23 +02:00
xen-emu.h hw/xen: Support HVM_PARAM_CALLBACK_TYPE_GSI callback 2023-03-01 09:06:44 +00:00