summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Alex Buynytskyy <alexbuy@google.com> 2023-10-30 19:44:15 +0000
committer Alex Buynytskyy <alexbuy@google.com> 2023-10-30 21:52:43 +0000
commit3f7e23e093210319ec8d0c992469746ac8587e3c (patch)
tree33a58260ef8966cc00c18cb846d9e563f8c5f6b8
parent2fa380777581cb14a28cd031da6926ae1df42043 (diff)
Mark nativeWake as CriticalNative.
Does a single write call. No Java etc. Bug: 301373254 Test: presubmit Change-Id: I48cb12437a01f4870e62eb8bd426aeb9226387bb
-rw-r--r--core/java/android/os/MessageQueue.java3
-rw-r--r--core/jni/android_os_MessageQueue.cpp2
2 files changed, 4 insertions, 1 deletions
diff --git a/core/java/android/os/MessageQueue.java b/core/java/android/os/MessageQueue.java
index 87c4f331e93f..9d8a71bf4abd 100644
--- a/core/java/android/os/MessageQueue.java
+++ b/core/java/android/os/MessageQueue.java
@@ -25,6 +25,8 @@ import android.util.Printer;
import android.util.SparseArray;
import android.util.proto.ProtoOutputStream;
+import dalvik.annotation.optimization.CriticalNative;
+
import java.io.FileDescriptor;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
@@ -70,6 +72,7 @@ public final class MessageQueue {
private native static void nativeDestroy(long ptr);
@UnsupportedAppUsage
private native void nativePollOnce(long ptr, int timeoutMillis); /*non-static for callbacks*/
+ @CriticalNative
private native static void nativeWake(long ptr);
private native static boolean nativeIsPolling(long ptr);
private native static void nativeSetFileDescriptorEvents(long ptr, int fd, int events);
diff --git a/core/jni/android_os_MessageQueue.cpp b/core/jni/android_os_MessageQueue.cpp
index 30d9ea19be39..9525605a6a8c 100644
--- a/core/jni/android_os_MessageQueue.cpp
+++ b/core/jni/android_os_MessageQueue.cpp
@@ -225,7 +225,7 @@ static void android_os_MessageQueue_nativePollOnce(JNIEnv* env, jobject obj,
nativeMessageQueue->pollOnce(env, obj, timeoutMillis);
}
-static void android_os_MessageQueue_nativeWake(JNIEnv* env, jclass clazz, jlong ptr) {
+static void android_os_MessageQueue_nativeWake(jlong ptr) {
NativeMessageQueue* nativeMessageQueue = reinterpret_cast<NativeMessageQueue*>(ptr);
nativeMessageQueue->wake();
}