Merge "Don't retrigger bootstat during userspace reboot."
diff --git a/adb/Android.bp b/adb/Android.bp
index 7c5e3ea..7e3be61 100644
--- a/adb/Android.bp
+++ b/adb/Android.bp
@@ -160,6 +160,7 @@
// libadbconnection_client doesn't need an embedded build number.
use_version_lib: false,
+ version_script: "adbconnection/libadbconnection_client.map.txt",
stubs: {
symbol_file: "adbconnection/libadbconnection_client.map.txt",
versions: ["1"],
diff --git a/init/init.cpp b/init/init.cpp
index a25bf6c..10701da 100644
--- a/init/init.cpp
+++ b/init/init.cpp
@@ -780,18 +780,18 @@
if (!(waiting_for_prop || Service::is_exec_service_running())) {
am.ExecuteOneCommand();
}
- if (!(waiting_for_prop || Service::is_exec_service_running())) {
- if (!IsShuttingDown()) {
- auto next_process_action_time = HandleProcessActions();
+ if (!IsShuttingDown()) {
+ auto next_process_action_time = HandleProcessActions();
- // If there's a process that needs restarting, wake up in time for that.
- if (next_process_action_time) {
- epoll_timeout = std::chrono::ceil<std::chrono::milliseconds>(
- *next_process_action_time - boot_clock::now());
- if (*epoll_timeout < 0ms) epoll_timeout = 0ms;
- }
+ // If there's a process that needs restarting, wake up in time for that.
+ if (next_process_action_time) {
+ epoll_timeout = std::chrono::ceil<std::chrono::milliseconds>(
+ *next_process_action_time - boot_clock::now());
+ if (*epoll_timeout < 0ms) epoll_timeout = 0ms;
}
+ }
+ if (!(waiting_for_prop || Service::is_exec_service_running())) {
// If there's more work to do, wake up again immediately.
if (am.HasMoreCommands()) epoll_timeout = 0ms;
}
diff --git a/libcutils/include/private/android_filesystem_config.h b/libcutils/include/private/android_filesystem_config.h
index ff6b036..a2d36ff 100644
--- a/libcutils/include/private/android_filesystem_config.h
+++ b/libcutils/include/private/android_filesystem_config.h
@@ -131,6 +131,8 @@
#define AID_FSVERITY_CERT 1075 /* fs-verity key ownership in keystore */
#define AID_CREDSTORE 1076 /* identity credential manager service */
#define AID_EXTERNAL_STORAGE 1077 /* Full external storage access including USB OTG volumes */
+#define AID_EXT_DATA_RW 1078 /* GID for app-private data directories on external storage */
+#define AID_EXT_OBB_RW 1079 /* GID for OBB directories on external storage */
/* Changes to this file must be made in AOSP, *not* in internal branches. */
#define AID_SHELL 2000 /* adb and debug shell user */
diff --git a/rootdir/init.rc b/rootdir/init.rc
index 20fb071..8612eb8 100644
--- a/rootdir/init.rc
+++ b/rootdir/init.rc
@@ -191,10 +191,10 @@
# Prepare directories for pass through processes
mkdir /mnt/pass_through 0700 root root
- mkdir /mnt/pass_through/0 0755 root root
- mkdir /mnt/pass_through/0/self 0755 root root
- mkdir /mnt/pass_through/0/emulated 0755 root root
- mkdir /mnt/pass_through/0/emulated/0 0755 root root
+ mkdir /mnt/pass_through/0 0710 root media_rw
+ mkdir /mnt/pass_through/0/self 0710 root media_rw
+ mkdir /mnt/pass_through/0/emulated 0710 root media_rw
+ mkdir /mnt/pass_through/0/emulated/0 0710 root media_rw
mkdir /mnt/expand 0771 system system
mkdir /mnt/appfuse 0711 root root
diff --git a/rootdir/init.usb.rc b/rootdir/init.usb.rc
index 02d34ba..27b05ec 100644
--- a/rootdir/init.usb.rc
+++ b/rootdir/init.usb.rc
@@ -138,5 +138,4 @@
on userspace-reboot-requested
setprop sys.usb.config ""
- setprop sys.usb.configfs ""
setprop sys.usb.state ""