Commit graph

6377 commits

Author SHA1 Message Date
Pawan Wagh
b43fe97e5a Merge "Set sehandle in voldFuzzer" am: c1572fe8cf
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/2492755

Change-Id: I60003de6b4df333663c168483acc5d967c16dd84
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-03-16 08:10:28 +00:00
Pawan Wagh
c1572fe8cf Merge "Set sehandle in voldFuzzer" 2023-03-16 07:28:40 +00:00
Pawan Wagh
25effc38ff Set sehandle in voldFuzzer
Bug: 271649747
Test: m vold_native_service_fuzzer && adb sync && adb shell data/fuzz/x86_64/vold_native_service_fuzzer/vold_native_service_fuzzer
Change-Id: I55a17ffd631b0b85e2fc049bffe9a91623699e64
2023-03-15 20:54:42 +00:00
Eric Biggers
7b7b1e8a42 Merge "Avoid error message when destroying key w/o secdiscardable file" am: dc262c27f0 am: 60c71b9950 am: 2ef1832ac4 am: 10f3d7ec32 am: 6bcbb52536
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/2470460

Change-Id: Ie02fea3f7bc444b3aeb89442e29099507cc1cfc8
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-03-04 09:13:47 +00:00
Eric Biggers
a8a1f0029a Merge "Avoid error message when destroying key w/o secdiscardable file" am: dc262c27f0 am: 60c71b9950 am: 2ef1832ac4 am: 10f3d7ec32 am: 9e23078702
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/2470460

Change-Id: I0a564f52364bff82b5fc3655654ab43acee1c0dd
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-03-04 09:06:41 +00:00
Eric Biggers
6bcbb52536 Merge "Avoid error message when destroying key w/o secdiscardable file" am: dc262c27f0 am: 60c71b9950 am: 2ef1832ac4 am: 10f3d7ec32
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/2470460

Change-Id: I21d1b7408545e709fc492773bf093227373feaaf
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-03-04 08:31:02 +00:00
Eric Biggers
9e23078702 Merge "Avoid error message when destroying key w/o secdiscardable file" am: dc262c27f0 am: 60c71b9950 am: 2ef1832ac4 am: 10f3d7ec32
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/2470460

Change-Id: I069d4cb6fb7e07fee3139c3036ccf92c5d5078ca
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-03-04 08:28:24 +00:00
Eric Biggers
10f3d7ec32 Merge "Avoid error message when destroying key w/o secdiscardable file" am: dc262c27f0 am: 60c71b9950 am: 2ef1832ac4
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/2470460

Change-Id: I9a0edebc0100cd56077e95ff5adb3f40d7b5129f
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-03-04 07:49:59 +00:00
Eric Biggers
2ef1832ac4 Merge "Avoid error message when destroying key w/o secdiscardable file" am: dc262c27f0 am: 60c71b9950
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/2470460

Change-Id: I3c1ccbf5a48de8281db1244471f40831e32decbe
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-03-04 07:16:23 +00:00
Eric Biggers
60c71b9950 Merge "Avoid error message when destroying key w/o secdiscardable file" am: dc262c27f0
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/2470460

Change-Id: I0259a28cc469a98149512f258751771f09112fda
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-03-04 06:30:21 +00:00
Eric Biggers
dc262c27f0 Merge "Avoid error message when destroying key w/o secdiscardable file" 2023-03-03 22:14:58 +00:00
Eric Biggers
73e2936fc2 Avoid error message when destroying key w/o secdiscardable file
Since commit 08f4bdfe98 ("Don't use a secdiscardable file for keys
encrypted by SP") (https://r.android.com/2242561), some keys don't use a
secdiscardable file.  Currently if such a key is destroyed, an ERROR
message like the following is logged:

    E secdiscard: Secure discard open failed for: /data/misc/vold/user_keys/ce/14/current/secdiscardable

This case is expected, so it should not be an ERROR.  Fix this by only
passing the secdiscardable file to the secdiscard program if it exists.

Bug: 232452368
Change-Id: I490289dfdaf0db6c3f4fb507509095e0033e2f69
2023-03-03 19:51:36 +00:00
Eric Biggers
f7edb44fb6 Merge "Check for SELinux labelling errors" am: 826eef6b33 am: 0c7abb02e5 am: 44d3181bc5 am: 13c2e12a5a am: 53b0fcc994
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/2465051

Change-Id: I0e2a8a89b98235c5ee8bc1a11a29c3d223f342f7
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-03-03 17:17:49 +00:00
Eric Biggers
0001466aa6 Merge "Check for SELinux labelling errors" am: 826eef6b33 am: 0c7abb02e5 am: 44d3181bc5 am: 13c2e12a5a am: 3b9d19f52c
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/2465051

Change-Id: I71982170ab9b98fde2d6d3a4c10abf91d1700aea
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-03-03 17:01:00 +00:00
Eric Biggers
3b9d19f52c Merge "Check for SELinux labelling errors" am: 826eef6b33 am: 0c7abb02e5 am: 44d3181bc5 am: 13c2e12a5a
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/2465051

Change-Id: Ie7b1a2da744300cfb91927705466eb3be5cad23f
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-03-03 01:28:41 +00:00
Eric Biggers
53b0fcc994 Merge "Check for SELinux labelling errors" am: 826eef6b33 am: 0c7abb02e5 am: 44d3181bc5 am: 13c2e12a5a
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/2465051

Change-Id: I3fd4f932a08debd717026026d9b23a2cae88b8f5
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-03-03 01:23:47 +00:00
Eric Biggers
13c2e12a5a Merge "Check for SELinux labelling errors" am: 826eef6b33 am: 0c7abb02e5 am: 44d3181bc5
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/2465051

Change-Id: Ie71dab9cd4818e1ab7d37c5442b451776451b328
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-03-02 20:27:49 +00:00
Eric Biggers
44d3181bc5 Merge "Check for SELinux labelling errors" am: 826eef6b33 am: 0c7abb02e5
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/2465051

Change-Id: I25c3b804e4e4814a357d8428231c42a33a5f01d8
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-03-02 19:49:30 +00:00
Eric Biggers
0c7abb02e5 Merge "Check for SELinux labelling errors" am: 826eef6b33
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/2465051

Change-Id: I55ae26d92455278fb9e687571392083c5859e4d9
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-03-02 19:14:42 +00:00
Eric Biggers
826eef6b33 Merge "Check for SELinux labelling errors" 2023-03-02 18:35:16 +00:00
Eric Biggers
c7c4f5a902 Check for SELinux labelling errors
It's essential that files created by vold get the correct SELinux
labels, so make sure to check for errors when setting them.

ENOENT (no label defined) is expected on some files such as
/mnt/appfuse/*, so allow ENOENT but log a DEBUG message.

This will help debug b/269567270.  This is not a fix for b/269567270.

Bug: 269567270
Test: Created user and checked SELinux labels of user's directories
Test: atest CtsBlobStoreHostTestCases
Change-Id: Ife005bdd896952653943c57336deb33456f7c5d8
2023-03-01 22:11:29 +00:00
Austin Delgado
d4f0c79fb5 Merge "Revert "Strictly check for SELinux labelling errors"" am: 545f0ab758 am: 9a4265cc20 am: edb3220e2b am: 6ed3654033 am: bd79cf1cb0
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/2461593

Change-Id: Ic11c86f95e156493eb8796d250c0e4821a88d693
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-03-01 02:10:39 +00:00
Austin Delgado
10c408e97f Merge "Revert "Strictly check for SELinux labelling errors"" am: 545f0ab758 am: 9a4265cc20 am: edb3220e2b am: 6ed3654033 am: 349dda09f2
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/2461593

Change-Id: Ie40234ff9cd76c9fc4d122dd40a3604ea42f30ea
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-03-01 02:09:14 +00:00
Austin Delgado
349dda09f2 Merge "Revert "Strictly check for SELinux labelling errors"" am: 545f0ab758 am: 9a4265cc20 am: edb3220e2b am: 6ed3654033
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/2461593

Change-Id: I363320f5d2af4663b0a4179afea0035274113b64
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-03-01 01:13:11 +00:00
Austin Delgado
bd79cf1cb0 Merge "Revert "Strictly check for SELinux labelling errors"" am: 545f0ab758 am: 9a4265cc20 am: edb3220e2b am: 6ed3654033
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/2461593

Change-Id: Id992e07388777ffb57ff0197b6d41db60e0f96a1
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-03-01 01:12:27 +00:00
Austin Delgado
6ed3654033 Merge "Revert "Strictly check for SELinux labelling errors"" am: 545f0ab758 am: 9a4265cc20 am: edb3220e2b
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/2461593

Change-Id: I9839fde4983f0ef66e5da75f9ad26537765b4773
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-03-01 00:19:37 +00:00
Eric Biggers
c8e993fd55 Merge "Strictly check for SELinux labelling errors" am: 5554b80afb am: d8bf3b2681 am: 2df74f43c0 am: f65f63a29c am: 3c69beeb5a
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/2456274

Change-Id: I858255f9403e042eef5cacee359c6540bc34096a
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-02-28 23:46:42 +00:00
Austin Delgado
edb3220e2b Merge "Revert "Strictly check for SELinux labelling errors"" am: 545f0ab758 am: 9a4265cc20
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/2461593

Change-Id: Ia7bd2386936b722f2c4effa3f2615caa11918353
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-02-28 23:41:28 +00:00
Eric Biggers
017ea112b4 Merge "Strictly check for SELinux labelling errors" am: 5554b80afb am: d8bf3b2681 am: 2df74f43c0 am: f65f63a29c am: f9ea98a1ba
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/2456274

Change-Id: I4bf219d3820646902b855df4ed28352b92f34f5f
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-02-28 23:08:42 +00:00
Eric Biggers
3c69beeb5a Merge "Strictly check for SELinux labelling errors" am: 5554b80afb am: d8bf3b2681 am: 2df74f43c0 am: f65f63a29c
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/2456274

Change-Id: I5e0bcea1dbb2131f6da83c8ec898975147d3e01f
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-02-28 22:55:03 +00:00
Austin Delgado
9a4265cc20 Merge "Revert "Strictly check for SELinux labelling errors"" am: 545f0ab758
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/2461593

Change-Id: Id02634939a86d6fb05b8a2762c4a6cb161ed7476
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-02-28 22:44:36 +00:00
Eric Biggers
f9ea98a1ba Merge "Strictly check for SELinux labelling errors" am: 5554b80afb am: d8bf3b2681 am: 2df74f43c0 am: f65f63a29c
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/2456274

Change-Id: Ib712102acd25edfbcf9e66784a57cc8eb2646cf5
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-02-28 22:27:00 +00:00
Austin Delgado
545f0ab758 Merge "Revert "Strictly check for SELinux labelling errors"" 2023-02-28 22:05:45 +00:00
Austin Delgado
b0f997deae Revert "Strictly check for SELinux labelling errors"
This reverts commit 2ef4e85448.

Reason for revert: b/271157681

Change-Id: I7224fd68027e2e9824694171547b8b2c808f9923
2023-02-28 21:58:08 +00:00
Eric Biggers
f65f63a29c Merge "Strictly check for SELinux labelling errors" am: 5554b80afb am: d8bf3b2681 am: 2df74f43c0
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/2456274

Change-Id: I0d2c7197660c0a3b1428c5ebe6904fd4db7f1a61
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-02-28 21:46:35 +00:00
Eric Biggers
2df74f43c0 Merge "Strictly check for SELinux labelling errors" am: 5554b80afb am: d8bf3b2681
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/2456274

Change-Id: Iaac9bc0c82a43a4808cec59867320ff6084cff67
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-02-28 21:03:43 +00:00
Eric Biggers
d8bf3b2681 Merge "Strictly check for SELinux labelling errors" am: 5554b80afb
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/2456274

Change-Id: I7c4ab5c3fdfbda22b24a8875915f3acfef1b8003
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-02-28 20:25:42 +00:00
Eric Biggers
5554b80afb Merge "Strictly check for SELinux labelling errors" 2023-02-28 19:31:24 +00:00
Nathan Huckleberry
759ac5f87c Clean up potential busy files after key eviction.
There is a race condition between key eviction and killing user
processes.  The race condition is difficult to properly fix without
significantly degrading UI performance.

If the race condition occurs, decrypted filesystem data is left in
various kernel caches.  To mitigate, we try to ensure the caches are
flushed by evicting the keys again in a worker thread.

Test: Checked that the correct log messages appear when evicting a
user's keys
Bug: 140762419

Change-Id: I9e39e5bb0f5190284552bcd252b6213a22a51e91
(cherry picked from commit a21962b207)
Merged-In: I9e39e5bb0f5190284552bcd252b6213a22a51e91
2023-02-28 18:47:56 +00:00
Eric Biggers
2ef4e85448 Strictly check for SELinux labelling errors
It's essential that files created by vold get the correct SELinux
labels, so make sure to check for errors when setting them.

This will help debug b/269567270.  This is not a fix for b/269567270.

Bug: 269567270
Test: Created user and checked SELinux labels of user's directories
Change-Id: I99e4d530a00f9401532c9cb0990df254b7a12a80
2023-02-27 21:01:25 +00:00
Eric Biggers
920ed71a38 Merge "Fix logspam when user removed before CE storage prepared" am: 481a5367a3 am: 6f2860e3d1 am: 82a70284e8 am: ca08807617 am: 82477817c7
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/2456268

Change-Id: I22560bfb5c1e05e317342af6bca2307cce96a353
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-02-25 05:25:00 +00:00
Eric Biggers
fe39a2dc83 Merge "Fix logspam when user removed before CE storage prepared" am: 481a5367a3 am: 6f2860e3d1 am: 82a70284e8 am: ca08807617 am: de7b5a0630
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/2456268

Change-Id: Ie89de8d3a7b64995b0ecf3185d461cb09b048f04
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-02-25 05:24:30 +00:00
Eric Biggers
de7b5a0630 Merge "Fix logspam when user removed before CE storage prepared" am: 481a5367a3 am: 6f2860e3d1 am: 82a70284e8 am: ca08807617
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/2456268

Change-Id: Ibadbd201508d4bf5138c22d896ad9dd63731eb4b
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-02-25 04:15:40 +00:00
Eric Biggers
82477817c7 Merge "Fix logspam when user removed before CE storage prepared" am: 481a5367a3 am: 6f2860e3d1 am: 82a70284e8 am: ca08807617
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/2456268

Change-Id: I96739dd0e525f24f1611af54df683c50f6fe0a2c
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-02-25 04:15:35 +00:00
Eric Biggers
ca08807617 Merge "Fix logspam when user removed before CE storage prepared" am: 481a5367a3 am: 6f2860e3d1 am: 82a70284e8
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/2456268

Change-Id: I4b47090596f05f70b1a1118daa2db7e65816f1e1
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-02-25 03:38:20 +00:00
Eric Biggers
82a70284e8 Merge "Fix logspam when user removed before CE storage prepared" am: 481a5367a3 am: 6f2860e3d1
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/2456268

Change-Id: I6893e48e0a0e4435c2ad24273111622476d281fa
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-02-25 02:41:48 +00:00
Eric Biggers
6f2860e3d1 Merge "Fix logspam when user removed before CE storage prepared" am: 481a5367a3
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/2456268

Change-Id: I23d149b794f713a87b6af202eb3c843ce590db54
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-02-25 02:04:20 +00:00
Eric Biggers
481a5367a3 Merge "Fix logspam when user removed before CE storage prepared" 2023-02-24 22:40:59 +00:00
Eric Biggers
629c63414e Fix logspam when user removed before CE storage prepared
Due to frameworks/base commit 5c65b1ee1023 ("Don't prepare CE storage on
user creation") (http://ag/20241697), removing a user immediately after
creating it causes the user's directories to be destroyed before CE
storage was prepared.

Functionally this works fine; however, it causes some error messages to
be spammed to the log because 'vold_prepare_subdirs destroy' doesn't
like that /data/misc_ce/$userId and /data/vendor_ce/$userId don't exist.
vold_prepare_subdirs logs two error messages itself, but it also exits
with a failure status, which bubbles up and causes a Slog.wtf with a
stack trace in StorageManagerService.

Fix this by making rmrf_contents() simply return true if the directory
doesn't exist.

Bug: 232452368
Test: 'pm create-user 10 && pm remove-user 10' and check logcat
Change-Id: I867a915f4b25e1a5f0603fbd84680b673ff5eb96
2023-02-24 22:38:06 +00:00
Nathan Huckleberry
791d952883 Merge "Clean up potential busy files after key eviction." am: eee1149800 am: 5c76dbd2b9 am: e182824b3b am: 173097221d am: f40bac66fd
Original change: https://android-review.googlesource.com/c/platform/system/vold/+/2448745

Change-Id: I698c808a4448bded11c51c0bfd2d17c7c92d87e5
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-02-24 11:25:49 +00:00