mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-07 09:43:56 -06:00
![]() A previous implementation of this stuff used a 64-bit field for all of the port information (vcpu/type/type_val) and did atomic exchanges on them. When I implemented that in Qemu I regretted my life choices and just kept it simple with locking instead. So there's no need for the XenEvtchnPort to be so simplistic. We can use a union for the pirq/virq/interdomain information, which lets us keep a separate bit for the 'remote domain' in interdomain ports. A single bit is enough since the only possible targets are loopback or qemu itself. So now we can ditch PORT_INFO_TYPEVAL_REMOTE_QEMU and the horrid manual masking, although the in-memory representation is identical so there's no change in the saved state ABI. Signed-off-by: David Woodhouse <dwmw@amazon.co.uk> Reviewed-by: Paul Durrant <paul@xen.org> |
||
---|---|---|
.. | ||
apic.c | ||
clock.c | ||
clock.h | ||
i8254.c | ||
i8259.c | ||
ioapic.c | ||
meson.build | ||
trace-events | ||
trace.h | ||
xen-stubs.c | ||
xen_evtchn.c | ||
xen_evtchn.h | ||
xen_gnttab.c | ||
xen_gnttab.h | ||
xen_overlay.c | ||
xen_overlay.h | ||
xen_xenstore.c | ||
xen_xenstore.h | ||
xenstore_impl.c | ||
xenstore_impl.h |