Merge "Revert "Stop & Resume property service when switching to bootstrap namespace"" into rvc-dev
This commit is contained in:
commit
293786f941
|
@ -323,20 +323,10 @@ bool SwitchToBootstrapMountNamespaceIfNeeded() {
|
|||
}
|
||||
if (bootstrap_ns_id != GetMountNamespaceId() && bootstrap_ns_fd.get() != -1 &&
|
||||
IsApexUpdatable()) {
|
||||
// The property service thread and its descendent threads must be in the correct mount
|
||||
// namespace to call Service::Start(), however setns() only operates on a single thread and
|
||||
// fails when secondary threads attempt to join the same mount namespace. Therefore, we
|
||||
// must join the property service thread and its descendents before the setns() call. Those
|
||||
// threads are then started again after the setns() call, and they'll be in the proper
|
||||
// namespace.
|
||||
PausePropertyService();
|
||||
|
||||
if (setns(bootstrap_ns_fd.get(), CLONE_NEWNS) == -1) {
|
||||
PLOG(ERROR) << "Failed to switch to bootstrap mount namespace.";
|
||||
return false;
|
||||
}
|
||||
|
||||
ResumePropertyService();
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue