forked from Bananymous/banan-os
Kernel: Remove kernel processes
Kernel can just use raw threads, pretty muchs the only thing that process provides is syscalls which kernel threads of course don't need. Also this makes init process have pid 1 :D
This commit is contained in:
@@ -215,9 +215,8 @@ namespace Kernel
|
||||
m_changed_ports |= 1u << port_id;
|
||||
}
|
||||
|
||||
m_port_updater = Process::create_kernel([](void* data) { reinterpret_cast<USBHubDriver*>(data)->port_updater_task(); }, this);
|
||||
if (m_port_updater == nullptr)
|
||||
return BAN::Error::from_errno(ENOMEM);
|
||||
m_port_updater = TRY(Thread::create_kernel([](void* data) { reinterpret_cast<USBHubDriver*>(data)->port_updater_task(); }, this));
|
||||
TRY(Processor::scheduler().add_thread(m_port_updater));
|
||||
|
||||
return {};
|
||||
}
|
||||
|
||||
@@ -135,9 +135,8 @@ namespace Kernel
|
||||
while (operational.usbsts & XHCI::USBSTS::HCHalted)
|
||||
continue;
|
||||
|
||||
m_port_updater = Process::create_kernel([](void* data) { reinterpret_cast<XHCIController*>(data)->port_updater_task(); }, this);
|
||||
if (m_port_updater == nullptr)
|
||||
return BAN::Error::from_errno(ENOMEM);
|
||||
m_port_updater = TRY(Thread::create_kernel([](void* data) { reinterpret_cast<XHCIController*>(data)->port_updater_task(); }, this));
|
||||
TRY(Processor::scheduler().add_thread(m_port_updater));
|
||||
|
||||
return {};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user