crosvm/devices/src
Alexandre Courbot ed66850d92 devices: pit: avoid storing raw file descriptor
The Worker struct is storing a Descriptor obtained from a timer for the
sole purpose of adding it to a WaitContext when the worker thread starts
running. Instead of doing this, create the WaitContext and pass it as
part of the worker data, so all ioctls involving that descriptor are
performed directly on the timer, guaranteeing that the descriptor is
valid.

BUG=233968702
TEST=Linux VM starts and boots with `--split-irqchip` specified.

Change-Id: Ie5da1e9866742108f52c526100e936d292167ab7
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3670105
Reviewed-by: Michael Hoyle <mikehoyle@google.com>
Tested-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Daniel Verkamp <dverkamp@chromium.org>
Reviewed-by: Dennis Kempin <denniskempin@google.com>
Commit-Queue: Alexandre Courbot <acourbot@chromium.org>
2022-05-28 07:29:02 +00:00
..
irqchip devices: irqchip: add specialized register_{edge|level}_irq_event() 2022-04-07 01:41:52 +00:00
pci devices: pci: PciBarIndex API cleanup 2022-05-25 20:36:40 +00:00
platform devices: irq_event: implement as_raw_descriptors() and use them 2022-04-07 01:41:56 +00:00
register_space devices/register_space: use Copy rather than Clone 2021-08-25 23:02:28 +00:00
sys devices: serial: introduce SerialInput trait 2022-05-26 10:09:52 +00:00
usb devices: usb: host: don't use Descriptor as temporary descriptor storage 2022-05-28 07:29:00 +00:00
utils base: accept AsRawDescriptor in PollContext/EpollContext/mmap 2022-04-11 20:27:06 +00:00
virtio devices: input: stop using Descriptor in evdev 2022-05-28 07:28:59 +00:00
acpi.rs crosvm: vm_events: consolidate vm events into one framework. 2022-05-20 18:04:21 +00:00
bat.rs devices: bat: remove unneeded use of Descriptor 2022-05-28 07:29:01 +00:00
bus.rs upstream a few file from dev/pci 2022-04-04 21:49:33 +00:00
cmos.rs
debugcon.rs Reland "devices: debugcon: add bochs-style debugcon device" 2022-05-26 19:25:02 +00:00
direct_io.rs crosvm: use BusRange in DirectIoOption. 2021-12-08 00:22:43 +00:00
direct_irq.rs Revert "direct_irq: Add support for host wakeup capable IRQs" 2022-05-19 14:28:46 +00:00
i8042.rs crosvm: vm_events: consolidate vm events into one framework. 2022-05-20 18:04:21 +00:00
irq_event.rs devices: irq_event: implement as_raw_descriptors() and use them 2022-04-07 01:41:56 +00:00
lib.rs Reland "devices: debugcon: add bochs-style debugcon device" 2022-05-26 19:25:02 +00:00
pit.rs devices: pit: avoid storing raw file descriptor 2022-05-28 07:29:02 +00:00
pl030.rs devices: pl030: convert to using IrqEdgeEvent 2022-04-06 18:54:48 +00:00
proxy.rs Introduce PCI virtual configuration space 2022-03-07 03:49:47 +00:00
serial.rs devices: serial: introduce SerialInput trait 2022-05-26 10:09:52 +00:00
serial_device.rs Reland "devices: debugcon: add bochs-style debugcon device" 2022-05-26 19:25:02 +00:00
software_tpm.rs devices: make virtio tpm backend pluggable 2022-03-31 23:03:16 +00:00
sys.rs Upstream windows serial device 2022-03-24 23:45:10 +00:00
vfio.rs devices: virtio: iommu: get iova_max_addr according to ranges' info 2022-04-28 04:43:11 +00:00