diff --git a/core/java/android/os/Binder.java b/core/java/android/os/Binder.java index 0c81e5a23291c..a0207c8497c81 100644 --- a/core/java/android/os/Binder.java +++ b/core/java/android/os/Binder.java @@ -127,6 +127,7 @@ public class Binder implements IBinder { * * @hide */ + @CriticalNative public static native int getNativeTid(); // Use a Holder to allow static initialization of Binder in the boot image, and diff --git a/core/jni/android_util_Binder.cpp b/core/jni/android_util_Binder.cpp index aef53a4b33182..885b0a33e43cd 100644 --- a/core/jni/android_util_Binder.cpp +++ b/core/jni/android_util_Binder.cpp @@ -1048,7 +1048,7 @@ static void android_os_Binder_setExtension(JNIEnv* env, jobject obj, jobject ext jbh->setExtension(extension); } -JNIEXPORT jint JNICALL android_os_Binder_getNativeTid(JNIEnv* env, jobject clazz) { +static jint android_os_Binder_getNativeTid() { return (jint)android::base::GetThreadId(); } @@ -1083,6 +1083,7 @@ static const JNINativeMethod gBinderMethods[] = { { "blockUntilThreadAvailable", "()V", (void*)android_os_Binder_blockUntilThreadAvailable }, { "getExtension", "()Landroid/os/IBinder;", (void*)android_os_Binder_getExtension }, { "setExtension", "(Landroid/os/IBinder;)V", (void*)android_os_Binder_setExtension }, + // @CriticalNative { "getNativeTid", "()I", (void*)android_os_Binder_getNativeTid }, };