Commit graph

4966 commits

Author SHA1 Message Date
Xin Li
06517b71b6 Merge sc-qpr1-dev-plus-aosp-without-vendor@7810918
Bug: 205056467
Merged-In: I026ad515c20a042f87d3ce580c28745e68c0f939
Change-Id: I8dc9a2c27a483de8845db7c6e1f60ab37f29d27e
2021-11-10 08:06:30 +00:00
David Anderson
57ca48b788 Merge changes Ia095340c,I464edc6e am: 3d1a532efc
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/1883358

Change-Id: If66258821cd75f3ac755f89eb6aa0b69321fdf48
2021-11-08 23:09:38 +00:00
David Anderson
3d1a532efc Merge changes Ia095340c,I464edc6e
* changes:
  Route error logs to the kernel during early boot.
  Improve vold logging.
2021-11-08 22:46:35 +00:00
David Anderson
52de78e97b Route error logs to the kernel during early boot.
This is needed to debug vold mounting errors before adb is up. It also
helps diagnose failures on devices that store dmesg persistently.

Tested by adding an error log with serial attached.

Bug: 205314634
Test: manual test
Change-Id: Ia095340c562e3f1f94bc44c5d13ad466a7a35345
2021-11-08 13:22:54 -08:00
David Anderson
e179157dc5 Improve vold logging.
This patch adds more error logging to mountFstab. In a few cases, the
were error paths with no existing error logs. In other cases, the log
messages are there to help understand error flow in logs (for example
when a function with lots of error paths returns false).

Bug: 205314634
Test: treehugger builds
Change-Id: I464edc6e74ea0d7419ee9d9b75fd238752c13f4f
2021-11-08 13:22:53 -08:00
Treehugger Robot
7a65ee339b Merge "Enable dynamic read logs buffer sizing for incfs" am: 2a89e7c577
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/1874527

Change-Id: I7587da946ceae55021235814444eef04f315516e
2021-10-28 23:17:45 +00:00
Treehugger Robot
2a89e7c577 Merge "Enable dynamic read logs buffer sizing for incfs" 2021-10-28 23:01:58 +00:00
Yurii Zubrytskyi
1d7acfddf7 Enable dynamic read logs buffer sizing for incfs
Default buffer size of 4 pages causes many missed log records
because of ring buffer overflows. This change adds a dynamic
sizing, up to 32 pages, that has shown to decrease dropped
records pretty much to nil

Fallback code automatically decreases the buffer size in case
of kernel memory fragmentation - some logs are still much
better than no logs at all

Bug: 203551890
Test: manual, adb install <Apk>; checked for fallback by
  increasing max size to 1024 pages
Change-Id: I0ea46c1ad2534b1dbb5faaead52afab88b66747b
2021-10-28 14:41:48 -07:00
Tianjie Xu
821e6c7db4 Merge "Delete the checkin directory with the wrong context" am: 2c48d37a29
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/1866819

Change-Id: Ia1fd614583176ced6135b8dfb4be8760273d9eec
2021-10-25 21:13:23 +00:00
Tianjie Xu
2c48d37a29 Merge "Delete the checkin directory with the wrong context" 2021-10-25 20:57:29 +00:00
Tianjie
b2ee9e0771 Delete the checkin directory with the wrong context
http://aosp/1845900 creates the directory with the wrong permission
and context. And when we attempt to fix it in http://aosp/1860276, the
device would fail to boot if the device is already on the bad build.

As a temporarily fix, already delete that checkin directory in vold. And
we can revert the deletion when the droidfood daily polulation gets out
of the bad state.

Bug: 203742483
Test: Update from TP1A.211016.001 and make sure the boot doesn't fail
Change-Id: Iec74528c1fe0e5876acc601e5cd008f99852d269
2021-10-22 18:28:29 +00:00
Tianjie Xu
5901afa842 Merge "Correct the permission of checkin dir" am: 9696432564
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/1860276

Change-Id: I114df75669af98d88e71189f60fce2cb1ec3db00
2021-10-19 21:55:26 +00:00
Tianjie Xu
9696432564 Merge "Correct the permission of checkin dir" 2021-10-19 21:37:52 +00:00
Tianjie
62487c92ba Correct the permission of checkin dir
Gmscore runs in cache group, so set the own:group of the checkin
directory to system:cache to align with other use cases. Because we
want proper user separation when accessing the dir, also provide
user id to set the correct selinux mls_level.

Bug: 197636740
Test: check selinux label, make sure checkin can access the directory.
Change-Id: Id47a2a30a2f37c204ef72a81ac2aebe4ee3a37b0
2021-10-16 13:24:01 -07:00
Keith Mok
05562f4a93 Merge "vold: Reboot if vold failure" am: 319f778edc
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/1846798

Change-Id: I02f07af8e5e82a2318614b5fc1b70727db967973
2021-10-16 06:54:27 +00:00
Keith Mok
319f778edc Merge "vold: Reboot if vold failure" 2021-10-16 06:39:29 +00:00
Tianjie Xu
0cc0755bf7 Merge "Create the checkin subdirectory under misc_ce" am: 45d04fb4a2
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/1845900

Change-Id: Ibd90bc3f7b20eac8dec03067fdbb1c64ac6225d5
2021-10-15 21:33:13 +00:00
Tianjie Xu
45d04fb4a2 Merge "Create the checkin subdirectory under misc_ce" 2021-10-15 21:19:26 +00:00
Keun-young Park
22b0c0fca0 Merge "Fix vold dump" am: bba0592dce
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/1856933

Change-Id: I6f6b0d3a00dd9d27ec47f7f06a44c463df3b9d0b
2021-10-14 21:39:10 +00:00
Keun-young Park
bba0592dce Merge "Fix vold dump" 2021-10-14 21:19:30 +00:00
Keun young Park
0bccae2070 Fix vold dump
- Original code of re-opening /proc/self/fd/fd does not work
  due to selinux violation.
- fd (=pipe) passed over binder should be used as it is.

Bug: 202999256
Test: $ adb shell su root dumpsys vold
Change-Id: I1fceba89f1b07228e1677c266f87e431e93f7cb5
2021-10-13 16:50:10 -07:00
Xin Li
b6c257d37f [automerger skipped] Merge "Merge Android 12" am: 97e69c9529 -s ours am: ad3c475452 -s ours am: 20bdf84535 -s ours
am skip reason: Merged-In I9d1b60b1bddeade81238cc971d38a5de76f748d5 with SHA-1 af91a5ec2d is already in history

Original change: https://android-review.googlesource.com/c/platform/system/vold/+/1848033

Change-Id: I026ad515c20a042f87d3ce580c28745e68c0f939
2021-10-08 07:56:44 +00:00
Xin Li
20bdf84535 [automerger skipped] Merge "Merge Android 12" am: 97e69c9529 -s ours am: ad3c475452 -s ours
am skip reason: Merged-In I9d1b60b1bddeade81238cc971d38a5de76f748d5 with SHA-1 af91a5ec2d is already in history

Original change: https://android-review.googlesource.com/c/platform/system/vold/+/1848033

Change-Id: Iad7911fc440b61df02311913865e49f6eb56de34
2021-10-08 01:39:29 +00:00
Xin Li
ad3c475452 [automerger skipped] Merge "Merge Android 12" am: 97e69c9529 -s ours
am skip reason: Merged-In I9d1b60b1bddeade81238cc971d38a5de76f748d5 with SHA-1 af91a5ec2d is already in history

Original change: https://android-review.googlesource.com/c/platform/system/vold/+/1848033

Change-Id: I463a0a99d587e9802c49a58fd36326dec26ddf31
2021-10-08 01:20:03 +00:00
Xin Li
97e69c9529 Merge "Merge Android 12" 2021-10-07 23:50:41 +00:00
Xin Li
0f3734a07e Merge Android 12
Bug: 202323961
Merged-In: I9d1b60b1bddeade81238cc971d38a5de76f748d5
Change-Id: Ic882ab8446d7c9012d344acdbb3911f6be7cd285
2021-10-06 22:55:15 +00:00
Keith Mok
c73dbac02d vold: Reboot if vold failure
Vold stores some status in memory.
If vold crashed and restarted, those status are not
restored. Reboot device if vold on failure.

Bug: 202048432
Test: manually kill vold
Change-Id: Ic56acd9cc906b0166adf805023e34bbd6b3648a5
2021-10-06 18:47:37 +00:00
Tianjie
570f0585b9 Create the checkin subdirectory under misc_ce
We need some storage on the device to backup the token for checkin
services. So users won't lose the checkin tokens when they clear
the app's storage. If the device accidentally loses the
token without backup, it won't be able to checkin again until
factory reset.

Because we want the token to be user specific, put it under misc_ce
and let vold create the sub-directory.

Bug: 197636740
Test: boot device, check selinux label of the dir
Change-Id: I0e19dcb7f4feb98fd9d1013cfd84b56ff1325373
2021-10-05 22:17:22 -07:00
David Anderson
598a02969f Merge "Pre-create userdata metadata encryption device." am: eb3182f040 am: af91a5ec2d am: a53bd16bc1
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/1833056

Change-Id: I033738b64c71eb19c5f4aec5c01f8bd72cc82aaa
2021-09-27 20:47:55 +00:00
David Anderson
a53bd16bc1 Merge "Pre-create userdata metadata encryption device." am: eb3182f040 am: af91a5ec2d
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/1833056

Change-Id: I608710e90fb6a7b80532eb90035909567d60b829
2021-09-27 20:32:58 +00:00
David Anderson
af91a5ec2d Merge "Pre-create userdata metadata encryption device." am: eb3182f040
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/1833056

Change-Id: I9d1b60b1bddeade81238cc971d38a5de76f748d5
2021-09-27 20:16:47 +00:00
David Anderson
eb3182f040 Merge "Pre-create userdata metadata encryption device." 2021-09-27 20:01:24 +00:00
Howard Chen
9c14e615a9 Merge "Make the deleteAllKey feature aware of the DSU mode" am: d718c8c577 am: 9c2577b823 am: fc8d1c7d37
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/1826054

Change-Id: I8244e7724d26dba47b38c586945cb4cff4122167
2021-09-22 04:49:16 +00:00
Howard Chen
fc8d1c7d37 Merge "Make the deleteAllKey feature aware of the DSU mode" am: d718c8c577 am: 9c2577b823
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/1826054

Change-Id: I5236ae0e54e9c95576f1b4b2ac58544d3a0468f0
2021-09-22 04:36:51 +00:00
Howard Chen
9c2577b823 Merge "Make the deleteAllKey feature aware of the DSU mode" am: d718c8c577
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/1826054

Change-Id: I55554e2a0545de6a747e44f5967534fe16d1341a
2021-09-22 04:22:35 +00:00
Howard Chen
d718c8c577 Merge "Make the deleteAllKey feature aware of the DSU mode" 2021-09-22 04:09:18 +00:00
David Anderson
156d9d2293 Pre-create userdata metadata encryption device.
CreateDevice() implicitly calls WaitForDevice(), which can impact boot
time if there are many uevents waiting to be processed. To alleviate
this, create an empty "userdata" device when vold starts (if metada
encryption is enabled). When it comes time to actually enable metadata
encryption, the device can be re-used and the subsequent Wait should be
much faster.

Bug: 198405417
Test: manual test; device boots
Change-Id: Iaacd10858272f17353475e25075ea1dda13f8fc4
2021-09-21 17:25:33 -07:00
Daniel Rosenberg
a911c46678 Merge "Fix the incorrect parameter quota when userdata is formatted with EXT4" am: 8bd25f8e74 am: 9788b022dd am: b476bc2041
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/1825558

Change-Id: I8ccd657f612eb28d35d545b6e8bc1321531ec3f5
2021-09-20 22:31:41 +00:00
Daniel Rosenberg
b476bc2041 Merge "Fix the incorrect parameter quota when userdata is formatted with EXT4" am: 8bd25f8e74 am: 9788b022dd
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/1825558

Change-Id: I1429919b9b952488484e51e88a5ff8a5c5ad24d0
2021-09-20 22:19:15 +00:00
Daniel Rosenberg
9788b022dd Merge "Fix the incorrect parameter quota when userdata is formatted with EXT4" am: 8bd25f8e74
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/1825558

Change-Id: I258381abf0a516987abad5357165f8cc6daec4fd
2021-09-20 22:02:27 +00:00
Daniel Rosenberg
8bd25f8e74 Merge "Fix the incorrect parameter quota when userdata is formatted with EXT4" 2021-09-20 21:44:44 +00:00
Howard Chen
cbc1bdba59 Make the deleteAllKey feature aware of the DSU mode
Currently, the vold detects the factory reset by checking the
metadata encryption key. This logic is only valid when the
device is not in DSU mode.

Bug: 199222795
Test: run DSU installation on a Pixel device
Change-Id: Ib40bd44d2ef7c872eba177c9ccfefac8934a49e6
2021-09-15 01:59:59 +00:00
lin.gui
3101ac01ac Fix the incorrect parameter quota when userdata is formatted with EXT4
The userdata will be formatted by VOLD during bootup when the userdata
is not completed file system(EXT4 or F2FS).
For EXT4 on userdata and quota feature is enabled. the parameter quota
is incorrect in ext4::Format(). Change the parameter from
quotatype=prjquota to quotatype=usrquota:grpquota:prjquota.

Bug: 199802158
Test: run cts-on-gsi -m CtsAppSecurityHostTestCases -t
      android.appsecurity.cts.StorageHostTest

Change-Id: Ibff10e8e67b4e6ffabea97f534ff6551aed91963
2021-09-14 02:05:27 +00:00
Thiébaud Weksteen
1d40040766 Merge "Replace security_context_t type" am: 530329222f am: cdbde55e7b am: 0bef24b06b
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/1824052

Change-Id: I741e052fe4a027505d858c1bac0ba63d3bd7c33f
2021-09-10 12:09:27 +00:00
Thiébaud Weksteen
0bef24b06b Merge "Replace security_context_t type" am: 530329222f am: cdbde55e7b
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/1824052

Change-Id: Id934c4e2995134c5e1463e972ca7a2a27050aa2b
2021-09-10 11:53:41 +00:00
Thiébaud Weksteen
cdbde55e7b Merge "Replace security_context_t type" am: 530329222f
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/1824052

Change-Id: Ie3c20ee9187f349c308798ec370f7aa754fdfa85
2021-09-10 11:31:07 +00:00
Thiébaud Weksteen
530329222f Merge "Replace security_context_t type" 2021-09-10 11:17:18 +00:00
Thiébaud Weksteen
ae8550fd20 Replace security_context_t type
security_context_t has been marked as deprecated in libselinux from
version 3.2. Update to the `char*` type.

Bug: 190808996
Test: m
Change-Id: I6f40e161251c79893d41e12c368715736578aacc
2021-09-10 10:54:19 +02:00
Keith Mok
2a305d48a9 Merge "Set a property if seed binding is enabled." am: cc63a93fd6 am: d5f0a5751e am: 7586bba487
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/1816736

Change-Id: I31bf53fb43e6f6367a70cbcf51cccf8f82342a70
2021-09-02 00:45:22 +00:00
Keith Mok
7586bba487 Merge "Set a property if seed binding is enabled." am: cc63a93fd6 am: d5f0a5751e
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/1816736

Change-Id: Idfb5e71271458418b23abf8741f2b0179435dc3a
2021-09-02 00:33:43 +00:00