1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-06-01 07:18:13 +00:00
serenity/Kernel/Bus/USB
Luke 14da080dcf Kernel/USB: Use allocate_kernel_region in Transfer buffer allocations
Previously it would create a contiguous AVMO manually and pass it to
MM. This uses supervisor pages that quickly run out as they never get
returned and crash the system.

Instead, use allocate_kernel_region as we're only allocating a page so
it will be contiguous and will be returned when destroyed.

A potentially better solution would be to use a pool of transfers to
avoid all the allocations. This just prevents the system from crashing
within ~5 seconds from the continuous hub polling.
2021-08-14 21:22:44 +02:00
..
PacketTypes.h Kernel/USB: Move the USB components as a subfolder to the Bus directory 2021-07-02 13:16:12 +02:00
UHCIController.cpp Kernel/USB: Add all USB 2.0 bmRequestType fields 2021-08-14 21:22:44 +02:00
UHCIController.h Kernel/USB: Create controller base class and introduce USBManagement 2021-08-09 21:05:25 +02:00
UHCIDescriptorTypes.h Kernel/USB: Move the USB components as a subfolder to the Bus directory 2021-07-02 13:16:12 +02:00
USBClasses.h Kernel/USB: Add header containing all the current USB classes 2021-08-14 21:22:44 +02:00
USBController.cpp Kernel/USB: Create controller base class and introduce USBManagement 2021-08-09 21:05:25 +02:00
USBController.h Kernel/USB: Create controller base class and introduce USBManagement 2021-08-09 21:05:25 +02:00
USBDescriptors.h Kernel/USB: Move the USB components as a subfolder to the Bus directory 2021-07-02 13:16:12 +02:00
USBDevice.cpp Kernel/USB: Add all USB 2.0 bmRequestType fields 2021-08-14 21:22:44 +02:00
USBDevice.h Kernel/USB: Create controller base class and introduce USBManagement 2021-08-09 21:05:25 +02:00
USBEndpoint.h Kernel/USB: Use "Pipe" instead of "USBPipe" in USBEndpoint 2021-08-14 21:22:44 +02:00
USBManagement.cpp Kernel/USB: Tighten up USBManagement enumeration code a bit 2021-08-09 22:52:09 +02:00
USBManagement.h Kernel/USB: Create controller base class and introduce USBManagement 2021-08-09 21:05:25 +02:00
USBPipe.cpp Kernel/USB: Pass in device address as last argument to Pipe constructor 2021-08-14 21:22:44 +02:00
USBPipe.h Kernel/USB: Create controller base class and introduce USBManagement 2021-08-09 21:05:25 +02:00
USBRequest.h Kernel/USB: Add all USB 2.0 bmRequestType fields 2021-08-14 21:22:44 +02:00
USBTransfer.cpp Kernel/USB: Use allocate_kernel_region in Transfer buffer allocations 2021-08-14 21:22:44 +02:00
USBTransfer.h Kernel/USB: Use allocate_kernel_region in Transfer buffer allocations 2021-08-14 21:22:44 +02:00