Merge "Pass SElinux info to installd dexopt" into oc-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
31762dd9a0
@@ -548,10 +548,11 @@ public class ZygoteInit {
|
||||
final int dexFlags = 0;
|
||||
final String compilerFilter = "speed";
|
||||
final String uuid = StorageManager.UUID_PRIVATE_INTERNAL;
|
||||
final String seInfo = null;
|
||||
try {
|
||||
installd.dexopt(classPathElement, Process.SYSTEM_UID, packageName,
|
||||
instructionSet, dexoptNeeded, outputPath, dexFlags, compilerFilter,
|
||||
uuid, sharedLibraries);
|
||||
uuid, sharedLibraries, seInfo);
|
||||
} catch (RemoteException | ServiceSpecificException e) {
|
||||
// Ignore (but log), we need this on the classpath for fallback mode.
|
||||
Log.w(TAG, "Failed compiling classpath element for system server: "
|
||||
|
||||
@@ -279,13 +279,14 @@ public class Installer extends SystemService {
|
||||
|
||||
public void dexopt(String apkPath, int uid, @Nullable String pkgName, String instructionSet,
|
||||
int dexoptNeeded, @Nullable String outputPath, int dexFlags,
|
||||
String compilerFilter, @Nullable String volumeUuid, @Nullable String sharedLibraries)
|
||||
String compilerFilter, @Nullable String volumeUuid, @Nullable String sharedLibraries,
|
||||
@Nullable String seInfo)
|
||||
throws InstallerException {
|
||||
assertValidInstructionSet(instructionSet);
|
||||
if (!checkBeforeRemote()) return;
|
||||
try {
|
||||
mInstalld.dexopt(apkPath, uid, pkgName, instructionSet, dexoptNeeded, outputPath,
|
||||
dexFlags, compilerFilter, volumeUuid, sharedLibraries);
|
||||
dexFlags, compilerFilter, volumeUuid, sharedLibraries, seInfo);
|
||||
} catch (Exception e) {
|
||||
throw InstallerException.from(e);
|
||||
}
|
||||
|
||||
@@ -278,7 +278,7 @@ public class OtaDexoptService extends IOtaDexopt.Stub {
|
||||
public void dexopt(String apkPath, int uid, @Nullable String pkgName,
|
||||
String instructionSet, int dexoptNeeded, @Nullable String outputPath,
|
||||
int dexFlags, String compilerFilter, @Nullable String volumeUuid,
|
||||
@Nullable String sharedLibraries) throws InstallerException {
|
||||
@Nullable String sharedLibraries, @Nullable String seInfo) throws InstallerException {
|
||||
commands.add(buildCommand("dexopt",
|
||||
apkPath,
|
||||
uid,
|
||||
@@ -289,7 +289,8 @@ public class OtaDexoptService extends IOtaDexopt.Stub {
|
||||
dexFlags,
|
||||
compilerFilter,
|
||||
volumeUuid,
|
||||
sharedLibraries));
|
||||
sharedLibraries,
|
||||
seInfo));
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -204,7 +204,7 @@ public class PackageDexOptimizer {
|
||||
long startTime = System.currentTimeMillis();
|
||||
|
||||
mInstaller.dexopt(path, uid, pkg.packageName, isa, dexoptNeeded, oatDir, dexoptFlags,
|
||||
compilerFilter, pkg.volumeUuid, sharedLibrariesPath);
|
||||
compilerFilter, pkg.volumeUuid, sharedLibrariesPath, pkg.applicationInfo.seInfo);
|
||||
|
||||
if (packageStats != null) {
|
||||
long endTime = System.currentTimeMillis();
|
||||
@@ -283,7 +283,7 @@ public class PackageDexOptimizer {
|
||||
// TODO(calin): maybe add a separate call.
|
||||
mInstaller.dexopt(path, info.uid, info.packageName, isa, /*dexoptNeeded*/ 0,
|
||||
/*oatDir*/ null, dexoptFlags,
|
||||
compilerFilter, info.volumeUuid, SKIP_SHARED_LIBRARY_CHECK);
|
||||
compilerFilter, info.volumeUuid, SKIP_SHARED_LIBRARY_CHECK, info.seInfoUser);
|
||||
}
|
||||
|
||||
return DEX_OPT_PERFORMED;
|
||||
|
||||
Reference in New Issue
Block a user