Snap for 12755599 from 4250b91047
to 25Q1-release
Change-Id: Ife06b0d41b2367ecc7ecaa3738b4c5adf81510ab
This commit is contained in:
commit
71c2b6331f
13 changed files with 107 additions and 1 deletions
|
@ -13,6 +13,11 @@ PRODUCT_COPY_FILES += \
|
||||||
device/google/gs-common/aoc/conf/init.aoc.daemon.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/init.aoc.rc
|
device/google/gs-common/aoc/conf/init.aoc.daemon.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/init.aoc.rc
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
ifneq ($(wildcard vendor/google/whitechapel/aoc/aocx/aidl/aocx/framework_compatibility_matrix.xml),)
|
||||||
|
DEVICE_FRAMEWORK_COMPATIBILITY_MATRIX_FILE += \
|
||||||
|
vendor/google/whitechapel/aoc/aocx/aidl/aocx/framework_compatibility_matrix.xml
|
||||||
|
endif
|
||||||
|
|
||||||
# AoC debug support
|
# AoC debug support
|
||||||
PRODUCT_PACKAGES_DEBUG += \
|
PRODUCT_PACKAGES_DEBUG += \
|
||||||
aocdump \
|
aocdump \
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
aocx.IAocx u:object_r:aocx:s0
|
aocx.IAocx/default u:object_r:aocx:s0
|
||||||
|
|
10
performance/experiments/Android.bp
Normal file
10
performance/experiments/Android.bp
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
package {
|
||||||
|
default_applicable_licenses: ["Android-Apache-2.0"],
|
||||||
|
}
|
||||||
|
|
||||||
|
sh_binary {
|
||||||
|
name: "pixel-experiments-recovery.sh",
|
||||||
|
src: "pixel-experiments-recovery.sh",
|
||||||
|
vendor: true,
|
||||||
|
init_rc: ["pixel-experiments-recovery.rc"],
|
||||||
|
}
|
5
performance/experiments/experiments.mk
Normal file
5
performance/experiments/experiments.mk
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
BOARD_VENDOR_SEPOLICY_DIRS += device/google/gs-common/performance/experiments/sepolicy
|
||||||
|
|
||||||
|
PRODUCT_PACKAGES += pixel-experiments-recovery.sh
|
||||||
|
|
||||||
|
include device/google/gs-common/performance/experiments/kswapd/kswapd.mk
|
10
performance/experiments/kswapd/Android.bp
Normal file
10
performance/experiments/kswapd/Android.bp
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
package {
|
||||||
|
default_applicable_licenses: ["Android-Apache-2.0"],
|
||||||
|
}
|
||||||
|
|
||||||
|
prebuilt_etc {
|
||||||
|
name: "pixel-kswapd-experiment.rc",
|
||||||
|
src: "pixel-kswapd-experiment.rc",
|
||||||
|
vendor: true,
|
||||||
|
sub_dir: "init",
|
||||||
|
}
|
1
performance/experiments/kswapd/kswapd.mk
Normal file
1
performance/experiments/kswapd/kswapd.mk
Normal file
|
@ -0,0 +1 @@
|
||||||
|
PRODUCT_PACKAGES += pixel-kswapd-experiment.rc
|
28
performance/experiments/kswapd/pixel-kswapd-experiment.rc
Normal file
28
performance/experiments/kswapd/pixel-kswapd-experiment.rc
Normal file
|
@ -0,0 +1,28 @@
|
||||||
|
# Kswapd experiment - allow kswapd to run on all cores. We only target zuma and
|
||||||
|
# zumapro because these are the only platforms where kswapd avoids big cores by
|
||||||
|
# default.
|
||||||
|
|
||||||
|
on property:vendor.perf.allow_experiments=1 \
|
||||||
|
&& property:ro.board.platform=zuma \
|
||||||
|
&& property:vendor.pixel.system.phenotype.Perf__kswapd_experiment=true
|
||||||
|
write /sys/kernel/vendor_mm/kswapd_cpu_affinity 1ff
|
||||||
|
|
||||||
|
on property:vendor.perf.allow_experiments=1 \
|
||||||
|
&& property:ro.board.platform=zumapro \
|
||||||
|
&& property:vendor.pixel.system.phenotype.Perf__kswapd_experiment=true
|
||||||
|
write /sys/kernel/vendor_mm/kswapd_cpu_affinity ff
|
||||||
|
|
||||||
|
|
||||||
|
# Kswapd experiment rampdown - restore CPU affinity to the default.
|
||||||
|
|
||||||
|
on property:vendor.perf.allow_experiments=1 \
|
||||||
|
&& property:ro.board.platform=zuma \
|
||||||
|
&& property:vendor.pixel.system.phenotype.Perf__kswapd_experiment=""
|
||||||
|
# Value is from device/google/zuma/conf/init.zuma.rc
|
||||||
|
write /sys/kernel/vendor_mm/kswapd_cpu_affinity ff
|
||||||
|
|
||||||
|
on property:vendor.perf.allow_experiments=1 \
|
||||||
|
&& property:ro.board.platform=zumapro \
|
||||||
|
&& property:vendor.pixel.system.phenotype.Perf__kswapd_experiment=""
|
||||||
|
# Value is from device/google/zumapro/conf/init.zumapro.soc.rc
|
||||||
|
write /sys/kernel/vendor_mm/kswapd_cpu_affinity 7f
|
17
performance/experiments/pixel-experiments-recovery.rc
Normal file
17
performance/experiments/pixel-experiments-recovery.rc
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
# pixel-experiments-recovery.sh waits Perf__experiments_delay_seconds and sets
|
||||||
|
# vendor.perf.allow_experiments=1, triggering experiments.
|
||||||
|
service pixel-experiments-recovery /vendor/bin/pixel-experiments-recovery.sh \
|
||||||
|
${vendor.pixel.system.phenotype.Perf__experiments_delay_seconds}
|
||||||
|
class main
|
||||||
|
user root
|
||||||
|
group root system
|
||||||
|
oneshot
|
||||||
|
disabled
|
||||||
|
|
||||||
|
# vendor.pixel.system.phenotype.Perf__xxx properties are set sometime after the
|
||||||
|
# device is unlocked for the first time. The check for sys.boot_completed is not
|
||||||
|
# strictly needed, but will prevent surprises if for some reason the property
|
||||||
|
# is set early.
|
||||||
|
on property:sys.boot_completed=1 && \
|
||||||
|
property:vendor.pixel.system.phenotype.Perf__experiments_delay_seconds=*
|
||||||
|
restart pixel-experiments-recovery
|
15
performance/experiments/pixel-experiments-recovery.sh
Executable file
15
performance/experiments/pixel-experiments-recovery.sh
Executable file
|
@ -0,0 +1,15 @@
|
||||||
|
#!/vendor/bin/sh
|
||||||
|
|
||||||
|
# This script delays experiments by the specified amount of seconds. The delay is not needed for
|
||||||
|
# the normal operation, but becomes essential for the rare case (which "should not happen") where
|
||||||
|
# an experiment causes really bad issues (e.g. crashes the kernel). In such case the delay gives
|
||||||
|
# GMSCore an opportunity to fetch fresh experiments snapshot (with the bad experiment disabled).
|
||||||
|
#
|
||||||
|
# See go/pixel-perf-experiment-whatif for more info.
|
||||||
|
|
||||||
|
delay_seconds="$1"
|
||||||
|
|
||||||
|
if [ -n "$delay_seconds" ]; then
|
||||||
|
sleep "$delay_seconds"
|
||||||
|
/vendor/bin/setprop vendor.perf.allow_experiments 1
|
||||||
|
fi
|
1
performance/experiments/sepolicy/file_contexts
Normal file
1
performance/experiments/sepolicy/file_contexts
Normal file
|
@ -0,0 +1 @@
|
||||||
|
/vendor/bin/pixel-experiments-recovery\.sh u:object_r:pixel-experiments-recovery-sh_exec:s0
|
|
@ -0,0 +1,10 @@
|
||||||
|
# Rules for pixel-experiments-recovery.sh
|
||||||
|
|
||||||
|
type pixel-experiments-recovery-sh, domain;
|
||||||
|
type pixel-experiments-recovery-sh_exec, exec_type, vendor_file_type, file_type;
|
||||||
|
|
||||||
|
init_daemon_domain(pixel-experiments-recovery-sh)
|
||||||
|
|
||||||
|
# Allow "setprop vendor.perf.allow_experiments".
|
||||||
|
allow pixel-experiments-recovery-sh vendor_toolbox_exec:file { execute_no_trans };
|
||||||
|
set_prop(pixel-experiments-recovery-sh, vendor_perf_allow_experiments_prop)
|
3
performance/experiments/sepolicy/property.te
Normal file
3
performance/experiments/sepolicy/property.te
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
# Properties shared between experiments.
|
||||||
|
|
||||||
|
vendor_internal_prop(vendor_perf_allow_experiments_prop)
|
1
performance/experiments/sepolicy/property_contexts
Normal file
1
performance/experiments/sepolicy/property_contexts
Normal file
|
@ -0,0 +1 @@
|
||||||
|
vendor.perf.allow_experiments u:object_r:vendor_perf_allow_experiments_prop:s0
|
Loading…
Add table
Add a link
Reference in a new issue