Commit 5ccb5c2f authored by Yusuke Sato's avatar Yusuke Sato Committed by Commit Bot

arcvm: Stop calling into session_manager for CPU cgroup adjustment

Now ARCVM's throttling is handled solely by Concierge. This CL depends
on chromium:1748118.

BUG=b:139095697
TEST=Start ARCVM, verify /sys/fs/cgroup/cpu/vms/arc/tasks is not empty,
 launch Play Store, verify /sys/fs/cgroup/cpu/vms/arc/cpu.shares is 1024,
 switch to Chrome, verify cpu.shares is 64.

Change-Id: Ic9746bb29363ed71ef5b43ef3659f78c23b07be5
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1758588
Commit-Queue: Yusuke Sato <yusukes@chromium.org>
Reviewed-by: default avatarHidehiko Abe <hidehiko@chromium.org>
Cr-Commit-Position: refs/heads/master@{#690142}
parent f73039a8
......@@ -57,9 +57,8 @@ void OnSetArcVmCpuRestriction(
LOG(ERROR) << "Failed to call SetVmCpuRestriction";
return;
}
if (response->success())
return;
// TODO(yusukes): Add logging here once Concierge side is ready.
if (!response->success())
LOG(ERROR) << "SetVmCpuRestriction for ARCVM failed";
}
void SetArcVmCpuRestriction(bool do_restrict) {
......@@ -79,6 +78,19 @@ void SetArcVmCpuRestriction(bool do_restrict) {
base::BindOnce(&OnSetArcVmCpuRestriction));
}
void SetArcContainerCpuRestriction(bool do_restrict) {
if (!chromeos::SessionManagerClient::Get()) {
LOG(WARNING) << "SessionManagerClient is not available";
return;
}
const login_manager::ContainerCpuRestrictionState state =
do_restrict ? login_manager::CONTAINER_CPU_RESTRICTION_BACKGROUND
: login_manager::CONTAINER_CPU_RESTRICTION_FOREGROUND;
chromeos::SessionManagerClient::Get()->SetArcCpuRestriction(
state, base::BindOnce(SetArcCpuRestrictionCallback, state));
}
} // namespace
bool IsArcAvailable() {
......@@ -243,19 +255,9 @@ void SetArcCpuRestriction(bool do_restrict) {
if (IsArcVmEnabled()) {
SetArcVmCpuRestriction(do_restrict);
// TODO(yusukes): Add return; here once Concierge side is ready.
}
if (!chromeos::SessionManagerClient::Get()) {
LOG(WARNING) << "SessionManagerClient is not available";
return;
} else {
SetArcContainerCpuRestriction(do_restrict);
}
const login_manager::ContainerCpuRestrictionState state =
do_restrict ? login_manager::CONTAINER_CPU_RESTRICTION_BACKGROUND
: login_manager::CONTAINER_CPU_RESTRICTION_FOREGROUND;
chromeos::SessionManagerClient::Get()->SetArcCpuRestriction(
state, base::BindOnce(SetArcCpuRestrictionCallback, state));
}
bool IsArcForceCacheAppIcon() {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment