acpid: setrens before ready(), fixing deadlock.
Otherwise, an open call to /scheme/acpi/tables will result in nsmgr blocking on an `openat(acpi_root, "tables")` call, which will never occur if acpid is itself blocking on a `ForkNs` call to nsmgr before it can serve any scheme requests.
This commit is contained in:
@@ -110,11 +110,11 @@ fn daemon(daemon: daemon::Daemon) -> ! {
|
||||
register_sync_scheme(&socket, "acpi", &mut scheme)
|
||||
.expect("acpid: failed to register acpi scheme to namespace");
|
||||
|
||||
libredox::call::setrens(0, 0).expect("acpid: failed to enter null namespace");
|
||||
|
||||
daemon.ready();
|
||||
log::info!("acpid ready");
|
||||
|
||||
libredox::call::setrens(0, 0).expect("acpid: failed to enter null namespace");
|
||||
|
||||
let mut mounted = true;
|
||||
while mounted {
|
||||
let Some(event) = event_queue
|
||||
|
||||
Reference in New Issue
Block a user