summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Linus Tufvesson <lus@google.com> 2024-11-04 14:05:51 +0100
committer Shai Barack <shayba@google.com> 2024-11-04 17:17:24 +0000
commit03266b5df7e11fcb2a3d16d66d2694cef9d22b19 (patch)
tree28477b69d08fd63b7db7f0f356ee7916d6420925
parent238801c3ab0ec5896bf8d7e2f2fc3cf03880c32b (diff)
Add oneway_finalizer_close_fixed flag
This flag will replace oneway_finalizer_close, only difference is that this new flag is declared with `is_fixed_read_only`. Some apps trigger the code path before configprovider has been made available to the client process causing a crash. Bug: 368221351 Bug: 376942274 Test: atest FrameworksCoreTests:android.database Change-Id: If09fa42d09e1f327632ae81b10aea5cd3929b5cf
-rw-r--r--core/java/android/database/BulkCursorNative.java2
-rw-r--r--core/java/android/database/sqlite/flags.aconfig8
2 files changed, 9 insertions, 1 deletions
diff --git a/core/java/android/database/BulkCursorNative.java b/core/java/android/database/BulkCursorNative.java
index 41585b3571d6..7d6e7ad857d1 100644
--- a/core/java/android/database/BulkCursorNative.java
+++ b/core/java/android/database/BulkCursorNative.java
@@ -215,7 +215,7 @@ final class BulkCursorProxy implements IBulkCursor {
// If close() is being called from the finalizer thread, do not wait for a reply from
// the remote side.
final boolean fromFinalizer =
- android.database.sqlite.Flags.onewayFinalizerClose()
+ android.database.sqlite.Flags.onewayFinalizerCloseFixed()
&& "FinalizerDaemon".equals(Thread.currentThread().getName());
mRemote.transact(CLOSE_TRANSACTION, data, reply,
fromFinalizer ? IBinder.FLAG_ONEWAY: 0);
diff --git a/core/java/android/database/sqlite/flags.aconfig b/core/java/android/database/sqlite/flags.aconfig
index c597895899b6..1b8471dfef4c 100644
--- a/core/java/android/database/sqlite/flags.aconfig
+++ b/core/java/android/database/sqlite/flags.aconfig
@@ -9,6 +9,14 @@ flag {
}
flag {
+ name: "oneway_finalizer_close_fixed"
+ namespace: "system_performance"
+ is_fixed_read_only: true
+ description: "Make BuildCursorNative.close oneway if in the the finalizer"
+ bug: "368221351"
+}
+
+flag {
name: "sqlite_apis_35"
is_exported: true
namespace: "system_performance"