diff options
Diffstat (limited to 'init/mount_namespace.cpp')
-rw-r--r-- | init/mount_namespace.cpp | 10 |
1 files changed, 0 insertions, 10 deletions
diff --git a/init/mount_namespace.cpp b/init/mount_namespace.cpp index 21750754ef..aa368492dc 100644 --- a/init/mount_namespace.cpp +++ b/init/mount_namespace.cpp @@ -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; } |