ladybird/Kernel/Graphics
Liav A 3fb289e27d Kernel/PCI: Don't hold spinlocks when doing fast device enumeration
Instead, hold the lock while we copy the contents to a stack-based
Vector then iterate on it without any locking.

Because we rely on heap allocations, we need to propagate errors back
in case of OOM condition, therefore, both PCI::enumerate API function
and PCI::Access::add_host_controller_and_enumerate_attached_devices use
now a ErrorOr<void> return value to propagate errors. OOM Error can only
occur when enumerating the m_device_identifiers vector under a spinlock
and trying to expand the temporary Vector which will be used locklessly
to actually iterate over the PCI::DeviceIdentifiers objects.
2022-03-14 22:39:09 +01:00
..
Bochs Kernel: Use IO init method for Bochs emulated VGA adapter 2022-02-24 09:08:04 +02:00
Console Kernel: Respect actual framebuffer pitch 2022-03-01 19:01:19 +01:00
Intel Kernel/Graphics: Override first byte of the EDID in Intel Native driver 2022-03-08 21:56:14 +01:00
VGA Kernel/Graphics: Don't try to enumerate PCI adapters if PCI is disabled 2022-03-02 18:41:54 +01:00
VirtIOGPU Kernel: Fix buffer overflow in VirtIOGPU create_3d_resource(..) 2022-03-14 22:30:22 +01:00
Definitions.h Kernel: Add ioctl to get the EDID from a framebuffer 2022-01-23 22:45:21 +00:00
FramebufferDevice.cpp Revert "Kernel: Don't override FramebufferDevice's memory regions on mmap" 2022-03-12 21:45:57 -08:00
FramebufferDevice.h Revert "Kernel: Don't override FramebufferDevice's memory regions on mmap" 2022-03-12 21:45:57 -08:00
GenericFramebufferDevice.cpp Kernel: Protect FramebufferDevice with spinlock instead of mutex 2022-02-03 16:11:26 +01:00
GenericFramebufferDevice.h Kernel: Protect FramebufferDevice with spinlock instead of mutex 2022-02-03 16:11:26 +01:00
GenericGraphicsAdapter.h Kernel: Add ioctl to get the EDID from a framebuffer 2022-01-23 22:45:21 +00:00
GraphicsManagement.cpp Kernel/PCI: Don't hold spinlocks when doing fast device enumeration 2022-03-14 22:39:09 +01:00
GraphicsManagement.h Kernel/Graphics: Don't try to enumerate PCI adapters if PCI is disabled 2022-03-02 18:41:54 +01:00
VGACompatibleAdapter.h Kernel/Graphics: Don't try to enumerate PCI adapters if PCI is disabled 2022-03-02 18:41:54 +01:00