Loading core/java/android/os/Binder.java +10 −0 Original line number Diff line number Diff line Loading @@ -542,6 +542,16 @@ public class Binder implements IBinder { @SystemApi(client = SystemApi.Client.MODULE_LIBRARIES) public final native void markVintfStability(); /** * Use a VINTF-stability binder w/o VINTF requirements. Should be called * on a binder before it is sent out of process. * * This must be called before the object is sent to another process. * * @hide */ public final native void forceDowngradeToSystemStability(); /** * Flush any Binder commands pending in the current thread to the kernel * driver. This can be Loading core/jni/android_util_Binder.cpp +13 −0 Original line number Diff line number Diff line Loading @@ -486,9 +486,15 @@ public: } void markVintf() { AutoMutex _l(mLock); mVintf = true; } void forceDowngradeToSystemStability() { AutoMutex _l(mLock); mVintf = false; } sp<IBinder> getExtension() { AutoMutex _l(mLock); sp<JavaBBinder> b = mBinder.promote(); Loading Loading @@ -1013,6 +1019,12 @@ static void android_os_Binder_markVintfStability(JNIEnv* env, jobject clazz) { jbh->markVintf(); } static void android_os_Binder_forceDowngradeToSystemStability(JNIEnv* env, jobject clazz) { JavaBBinderHolder* jbh = (JavaBBinderHolder*) env->GetLongField(clazz, gBinderOffsets.mObject); jbh->forceDowngradeToSystemStability(); } static void android_os_Binder_flushPendingCommands(JNIEnv* env, jobject clazz) { IPCThreadState::self()->flushCommands(); Loading Loading @@ -1076,6 +1088,7 @@ static const JNINativeMethod gBinderMethods[] = { { "clearCallingWorkSource", "()J", (void*)android_os_Binder_clearCallingWorkSource }, { "restoreCallingWorkSource", "(J)V", (void*)android_os_Binder_restoreCallingWorkSource }, { "markVintfStability", "()V", (void*)android_os_Binder_markVintfStability}, { "forceDowngradeToSystemStability", "()V", (void*)android_os_Binder_forceDowngradeToSystemStability}, { "flushPendingCommands", "()V", (void*)android_os_Binder_flushPendingCommands }, { "getNativeBBinderHolder", "()J", (void*)android_os_Binder_getNativeBBinderHolder }, { "getNativeFinalizer", "()J", (void*)android_os_Binder_getNativeFinalizer }, Loading Loading
core/java/android/os/Binder.java +10 −0 Original line number Diff line number Diff line Loading @@ -542,6 +542,16 @@ public class Binder implements IBinder { @SystemApi(client = SystemApi.Client.MODULE_LIBRARIES) public final native void markVintfStability(); /** * Use a VINTF-stability binder w/o VINTF requirements. Should be called * on a binder before it is sent out of process. * * This must be called before the object is sent to another process. * * @hide */ public final native void forceDowngradeToSystemStability(); /** * Flush any Binder commands pending in the current thread to the kernel * driver. This can be Loading
core/jni/android_util_Binder.cpp +13 −0 Original line number Diff line number Diff line Loading @@ -486,9 +486,15 @@ public: } void markVintf() { AutoMutex _l(mLock); mVintf = true; } void forceDowngradeToSystemStability() { AutoMutex _l(mLock); mVintf = false; } sp<IBinder> getExtension() { AutoMutex _l(mLock); sp<JavaBBinder> b = mBinder.promote(); Loading Loading @@ -1013,6 +1019,12 @@ static void android_os_Binder_markVintfStability(JNIEnv* env, jobject clazz) { jbh->markVintf(); } static void android_os_Binder_forceDowngradeToSystemStability(JNIEnv* env, jobject clazz) { JavaBBinderHolder* jbh = (JavaBBinderHolder*) env->GetLongField(clazz, gBinderOffsets.mObject); jbh->forceDowngradeToSystemStability(); } static void android_os_Binder_flushPendingCommands(JNIEnv* env, jobject clazz) { IPCThreadState::self()->flushCommands(); Loading Loading @@ -1076,6 +1088,7 @@ static const JNINativeMethod gBinderMethods[] = { { "clearCallingWorkSource", "()J", (void*)android_os_Binder_clearCallingWorkSource }, { "restoreCallingWorkSource", "(J)V", (void*)android_os_Binder_restoreCallingWorkSource }, { "markVintfStability", "()V", (void*)android_os_Binder_markVintfStability}, { "forceDowngradeToSystemStability", "()V", (void*)android_os_Binder_forceDowngradeToSystemStability}, { "flushPendingCommands", "()V", (void*)android_os_Binder_flushPendingCommands }, { "getNativeBBinderHolder", "()J", (void*)android_os_Binder_getNativeBBinderHolder }, { "getNativeFinalizer", "()J", (void*)android_os_Binder_getNativeFinalizer }, Loading