Use set_sched_policy to put dexopt operations in SP_BACKGROUND cgroup
Bug: 15927194
(cherry picked from commit 0378aaf257
)
Change-Id: I462b5ac256c4d091ed4023cf4b97dd6a4abcaa5f
This commit is contained in:
parent
7d1cd4aae2
commit
3b14e5b1f3
@ -17,6 +17,7 @@
|
|||||||
#include <inttypes.h>
|
#include <inttypes.h>
|
||||||
#include <sys/capability.h>
|
#include <sys/capability.h>
|
||||||
#include "installd.h"
|
#include "installd.h"
|
||||||
|
#include <cutils/sched_policy.h>
|
||||||
#include <diskusage/dirsize.h>
|
#include <diskusage/dirsize.h>
|
||||||
#include <selinux/android.h>
|
#include <selinux/android.h>
|
||||||
|
|
||||||
@ -950,6 +951,10 @@ int dexopt(const char *apk_path, uid_t uid, int is_public,
|
|||||||
ALOGE("capset failed: %s\n", strerror(errno));
|
ALOGE("capset failed: %s\n", strerror(errno));
|
||||||
exit(66);
|
exit(66);
|
||||||
}
|
}
|
||||||
|
if (set_sched_policy(0, SP_BACKGROUND) < 0) {
|
||||||
|
ALOGE("set_sched_policy failed: %s\n", strerror(errno));
|
||||||
|
exit(70);
|
||||||
|
}
|
||||||
if (flock(out_fd, LOCK_EX | LOCK_NB) != 0) {
|
if (flock(out_fd, LOCK_EX | LOCK_NB) != 0) {
|
||||||
ALOGE("flock(%s) failed: %s\n", out_path, strerror(errno));
|
ALOGE("flock(%s) failed: %s\n", out_path, strerror(errno));
|
||||||
exit(67);
|
exit(67);
|
||||||
|
Loading…
Reference in New Issue
Block a user