From d7125c42dbddb33180970edc8e3b343c3b6b3808 Mon Sep 17 00:00:00 2001 From: Martin Liu Date: Thu, 18 Apr 2024 02:01:18 +0000 Subject: [PATCH 1/2] allow vendor init to access MM knob allow vendor init to access compaction_proactiveness and percpu_pagelist_high_fraction Bug: 332916849 Bug: 309409009 Test: boot Change-Id: Idf83babc3f482ad4183c7287a808904c9608fc10 Signed-off-by: Martin Liu --- performance/sepolicy/vendor_init.te | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 performance/sepolicy/vendor_init.te diff --git a/performance/sepolicy/vendor_init.te b/performance/sepolicy/vendor_init.te new file mode 100644 index 0000000..6b4ef15 --- /dev/null +++ b/performance/sepolicy/vendor_init.te @@ -0,0 +1,4 @@ +# MM +allow vendor_init proc_percpu_pagelist_high_fraction:file w_file_perms; +allow vendor_init proc_compaction_proactiveness:file w_file_perms; + From d627901103460839430b24d405b8ab9ba9988ba7 Mon Sep 17 00:00:00 2001 From: Martin Liu Date: Thu, 18 Apr 2024 07:07:16 +0000 Subject: [PATCH 2/2] Set compaction_proactiveness and percpu_pagelist_high_fraction Move the settings from project's setting to common folder so the changes can also apply to the following 6.1 kernel. Bug: 332916849 Bug: 309409009 Test: boot Change-Id: I89d0386821e8a47301023aa414998dd76e3bd6b9 Signed-off-by: Martin Liu --- performance/Android.bp | 1 + performance/init.pixel-mm-gs.rc | 20 ++++++++++++++++++++ 2 files changed, 21 insertions(+) create mode 100644 performance/init.pixel-mm-gs.rc diff --git a/performance/Android.bp b/performance/Android.bp index 6eee7c4..c29b460 100644 --- a/performance/Android.bp +++ b/performance/Android.bp @@ -5,6 +5,7 @@ package { cc_binary { name: "dump_perf", srcs: ["dump_perf.cpp"], + init_rc: ["init.pixel-mm-gs.rc"], cflags: [ "-Wall", "-Wextra", diff --git a/performance/init.pixel-mm-gs.rc b/performance/init.pixel-mm-gs.rc new file mode 100644 index 0000000..9bc12e9 --- /dev/null +++ b/performance/init.pixel-mm-gs.rc @@ -0,0 +1,20 @@ +# Copyright (C) 2024 The Android Open-Source Project +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +on init + # adjust PCP high level + write /proc/sys/vm/percpu_pagelist_high_fraction 430 + + # disable proactive compaction + write /proc/sys/vm/compaction_proactiveness 0