diff options
6 files changed, 20 insertions, 108 deletions
diff --git a/StubLibraries.bp b/StubLibraries.bp index 4af5ce76b8d6..90bac37b944e 100644 --- a/StubLibraries.bp +++ b/StubLibraries.bp @@ -247,21 +247,7 @@ java_library_static { "framework-wifi.stubs", "private-stub-annotations-jar", ], - defaults: [ - "android_defaults_stubs_current", - "android_stubs_dists_default", - ], - dist: { - dir: "apistubs/android/system", - }, - dists: [ - { - // Legacy dist path - targets: ["sdk", "win_sdk"], - tag: ".jar", - dest: "android_system.jar", - }, - ], + defaults: ["android_defaults_stubs_current"], } java_library_static { @@ -278,7 +264,21 @@ java_library_static { "framework-wifi.stubs.system", "private-stub-annotations-jar", ], - defaults: ["android_defaults_stubs_current"], + defaults: [ + "android_defaults_stubs_current", + "android_stubs_dists_default", + ], + dist: { + dir: "apistubs/android/system", + }, + dists: [ + { + // Legacy dist path + targets: ["sdk", "win_sdk"], + tag: ".jar", + dest: "android_system.jar", + }, + ], } java_library_static { diff --git a/core/jni/com_android_internal_os_Zygote.cpp b/core/jni/com_android_internal_os_Zygote.cpp index 70c2afb74c72..6381cf59380a 100644 --- a/core/jni/com_android_internal_os_Zygote.cpp +++ b/core/jni/com_android_internal_os_Zygote.cpp @@ -78,7 +78,6 @@ #include <android-base/unique_fd.h> #include <bionic/malloc.h> #include <bionic/mte.h> -#include <bionic/mte_kernel.h> #include <cutils/fs.h> #include <cutils/memory.h> #include <cutils/multiuser.h> @@ -1676,28 +1675,6 @@ static void BindMountStorageDirs(JNIEnv* env, jobjectArray pkg_data_info_list, } } -#ifdef ANDROID_EXPERIMENTAL_MTE -static void SetTagCheckingLevel(int level) { -#ifdef __aarch64__ - if (!(getauxval(AT_HWCAP2) & HWCAP2_MTE)) { - return; - } - - int tagged_addr_ctrl = prctl(PR_GET_TAGGED_ADDR_CTRL, 0, 0, 0, 0); - if (tagged_addr_ctrl < 0) { - ALOGE("prctl(PR_GET_TAGGED_ADDR_CTRL) failed: %s", strerror(errno)); - return; - } - - tagged_addr_ctrl = (tagged_addr_ctrl & ~PR_MTE_TCF_MASK) | level; - if (prctl(PR_SET_TAGGED_ADDR_CTRL, tagged_addr_ctrl, 0, 0, 0) < 0) { - ALOGE("prctl(PR_SET_TAGGED_ADDR_CTRL, %d) failed: %s", tagged_addr_ctrl, - strerror(errno)); - } -#endif -} -#endif - // Utility routine to specialize a zygote child process. static void SpecializeCommon(JNIEnv* env, uid_t uid, gid_t gid, jintArray gids, jint runtime_flags, jobjectArray rlimits, @@ -1833,22 +1810,14 @@ static void SpecializeCommon(JNIEnv* env, uid_t uid, gid_t gid, jintArray gids, heap_tagging_level = M_HEAP_TAGGING_LEVEL_TBI; break; case RuntimeFlags::MEMORY_TAG_LEVEL_ASYNC: -#ifdef ANDROID_EXPERIMENTAL_MTE - SetTagCheckingLevel(PR_MTE_TCF_ASYNC); -#endif heap_tagging_level = M_HEAP_TAGGING_LEVEL_ASYNC; break; case RuntimeFlags::MEMORY_TAG_LEVEL_SYNC: -#ifdef ANDROID_EXPERIMENTAL_MTE - SetTagCheckingLevel(PR_MTE_TCF_SYNC); -#endif heap_tagging_level = M_HEAP_TAGGING_LEVEL_SYNC; break; default: -#ifdef ANDROID_EXPERIMENTAL_MTE - SetTagCheckingLevel(PR_MTE_TCF_NONE); -#endif heap_tagging_level = M_HEAP_TAGGING_LEVEL_NONE; + break; } android_mallopt(M_SET_HEAP_TAGGING_LEVEL, &heap_tagging_level, sizeof(heap_tagging_level)); // Now that we've used the flag, clear it so that we don't pass unknown flags to the ART runtime. diff --git a/keystore/java/android/security/keystore/AndroidKeyStoreProvider.java b/keystore/java/android/security/keystore/AndroidKeyStoreProvider.java index 3ac9d68d5a9f..5867ef6eaea5 100644 --- a/keystore/java/android/security/keystore/AndroidKeyStoreProvider.java +++ b/keystore/java/android/security/keystore/AndroidKeyStoreProvider.java @@ -84,7 +84,7 @@ public class AndroidKeyStoreProvider extends Provider { // java.security.KeyStore put("KeyStore.AndroidKeyStore", PACKAGE_NAME + ".AndroidKeyStoreSpi"); - put("alg.alias.KeyStore.AndroidKeyStoreLegacy", "AndroidKeyStore"); + put("Alg.Alias.KeyStore.AndroidKeyStoreLegacy", "AndroidKeyStore"); // java.security.KeyPairGenerator put("KeyPairGenerator.EC", PACKAGE_NAME + ".AndroidKeyStoreKeyPairGeneratorSpi$EC"); diff --git a/services/core/java/com/android/server/pm/PreferredComponent.java b/services/core/java/com/android/server/pm/PreferredComponent.java index 3732bb6a834c..c312fc0eca2f 100644 --- a/services/core/java/com/android/server/pm/PreferredComponent.java +++ b/services/core/java/com/android/server/pm/PreferredComponent.java @@ -254,43 +254,6 @@ public class PreferredComponent { return numMatch == NS; } - public boolean sameSet(PreferredComponent pc) { - if (mSetPackages == null || pc == null || pc.mSetPackages == null - || !sameComponent(pc.mComponent)) { - return false; - } - final int otherPackageCount = pc.mSetPackages.length; - final int packageCount = mSetPackages.length; - int numMatch = 0; - for (int i = 0; i < otherPackageCount; i++) { - boolean good = false; - for (int j = 0; j < packageCount; j++) { - if (mSetPackages[j].equals(pc.mSetPackages[j]) - && mSetClasses[j].equals(pc.mSetClasses[j])) { - numMatch++; - good = true; - break; - } - } - if (!good) { - return false; - } - } - return numMatch == packageCount; - } - - /** Returns true if the preferred component represents the provided ComponentName. */ - private boolean sameComponent(ComponentName comp) { - if (mComponent == null || comp == null) { - return false; - } - if (mComponent.getPackageName().equals(comp.getPackageName()) - && mComponent.getClassName().equals(comp.getClassName())) { - return true; - } - return false; - } - public boolean isSuperset(List<ResolveInfo> query, boolean excludeSetupWizardPackage) { if (mSetPackages == null) { return query == null; diff --git a/services/core/java/com/android/server/pm/PreferredIntentResolver.java b/services/core/java/com/android/server/pm/PreferredIntentResolver.java index ff3df130a3cc..a261e29b05a7 100644 --- a/services/core/java/com/android/server/pm/PreferredIntentResolver.java +++ b/services/core/java/com/android/server/pm/PreferredIntentResolver.java @@ -22,7 +22,6 @@ import android.content.IntentFilter; import java.io.PrintWriter; import com.android.server.IntentResolver; -import java.util.ArrayList; public class PreferredIntentResolver extends IntentResolver<PreferredActivity, PreferredActivity> { @@ -46,24 +45,4 @@ public class PreferredIntentResolver protected IntentFilter getIntentFilter(@NonNull PreferredActivity input) { return input; } - - public boolean shouldAddPreferredActivity(PreferredActivity pa) { - ArrayList<PreferredActivity> pal = findFilters(pa); - if (pal == null || pal.isEmpty()) { - return true; - } - if (!pa.mPref.mAlways) { - return false; - } - final int activityCount = pal.size(); - for (int i = 0; i < activityCount; i++) { - PreferredActivity cur = pal.get(i); - if (cur.mPref.mAlways - && cur.mPref.mMatch == (pa.mPref.mMatch & IntentFilter.MATCH_CATEGORY_MASK) - && cur.mPref.sameSet(pa.mPref)) { - return false; - } - } - return true; - } } diff --git a/services/core/java/com/android/server/pm/Settings.java b/services/core/java/com/android/server/pm/Settings.java index 79e5b276ac64..0f5d9781c612 100644 --- a/services/core/java/com/android/server/pm/Settings.java +++ b/services/core/java/com/android/server/pm/Settings.java @@ -1410,7 +1410,8 @@ public final class Settings { PreferredActivity pa = new PreferredActivity(parser); if (pa.mPref.getParseError() == null) { final PreferredIntentResolver resolver = editPreferredActivitiesLPw(userId); - if (resolver.shouldAddPreferredActivity(pa)) { + ArrayList<PreferredActivity> pal = resolver.findFilters(pa); + if (pal == null || pal.size() == 0 || pa.mPref.mAlways) { resolver.addFilter(pa); } } else { |