fix: move RTL-SDR to userspace
This commit is contained in:
1 parent
b1f1cfe32b
commit
5cd5c2e6be
35 files changed
+1922
-1592
No files matched your search
@@ -27,6 +27,7 @@
|
||||
#include <Drivers/Audio/Mixer.hpp>
|
||||
#include <Drivers/Graphics/IntelGPU.hpp>
|
||||
#include <Ipc/Ipc.hpp>
|
||||
#include <Drivers/USB/UserUsb.hpp>
|
||||
|
||||
// Assembly: context switch with CR3 and FPU state parameters
|
||||
extern "C" void SchedContextSwitch(uint64_t* oldRsp, uint64_t newRsp, uint64_t newCR3,
|
||||
@@ -1607,6 +1608,11 @@ namespace Sched {
|
||||
// never stranded on the invisible buffer (no-op for non-owners).
|
||||
Drivers::Graphics::IntelGPU::OnProcessExit(exitingPid);
|
||||
|
||||
// USB interface claims are process-owned capabilities. Closing them
|
||||
// here stops DMA streaming and releases exclusivity even when an app
|
||||
// exits without calling usb_close().
|
||||
Drivers::USB::UserUsb::ReleaseAllForPid(exitingPid);
|
||||
|
||||
// Release process-scoped IPC handles/mappings before tearing down the address space.
|
||||
Ipc::CleanupProcessSlot(slot, exitingPid, proc.pml4Phys);
|
||||
montauk::abi::CleanupHeapForSlot(slot, proc.pml4Phys);
|
||||
|
||||
Reference in new issue
Block a user