Fix new adb remount/overlayfs solution for older kernels
Bug: 395860950
Test: system/core/fs_mgr/tests/adb-remount-test.sh and manual
confirmation from bug reporter that bug has gone
Change-Id: Ia27b5ee8c0c2cffff37f2c652d8cdc41e1f22a32
diff --git a/fs_mgr/fs_mgr.cpp b/fs_mgr/fs_mgr.cpp
index 275bc80..a30d9c0 100644
--- a/fs_mgr/fs_mgr.cpp
+++ b/fs_mgr/fs_mgr.cpp
@@ -2336,10 +2336,6 @@
return {.supported = false};
}
- if (!use_override_creds) {
- return {.supported = true, ",userxattr"};
- }
-
struct utsname uts;
if (uname(&uts) == -1) {
return {.supported = false};
@@ -2348,6 +2344,14 @@
if (sscanf(uts.release, "%d.%d", &major, &minor) != 2) {
return {.supported = false};
}
+
+ if (!use_override_creds) {
+ if (major > 5 || (major == 5 && minor >= 15)) {
+ return {.supported = true, ",userxattr"};
+ }
+ return {.supported = true};
+ }
+
// Overlayfs available in the kernel, and patched for override_creds?
if (access("/sys/module/overlay/parameters/override_creds", F_OK) == 0) {
auto mount_flags = ",override_creds=off"s;