Merge "Skip loading kernel modules for 16K mode" into main

This commit is contained in:
Kelvin Zhang 2024-04-25 00:00:31 +00:00 committed by Android (Google) Code Review
commit d27d373537
2 changed files with 19 additions and 4 deletions

View File

@ -11,6 +11,17 @@ modules_dir=
system_modules_dir=
vendor_modules_dir=
pagesize=$(getconf PAGESIZE)
bootoption=$(getprop ro.product.build.16k_page.enabled)
if [ "$pagesize" != "4096" ] && [ "$bootoption" == "true" ]; then
echo "Device has page size $pagesize , skip loading modules from vendor_dlkm/system_dlkm because all modules are stored on vendor_boot"
setprop vendor.common.modules.ready 1
setprop vendor.device.modules.ready 1
setprop vendor.all.modules.ready 1
setprop vendor.all.devices.ready 1
return 0
fi
for dir in system vendor; do
for f in /${dir}/lib/modules/*/modules.dep /${dir}/lib/modules/modules.dep; do
if [[ -f "$f" ]]; then
@ -52,10 +63,10 @@ if [ $# -eq 1 ]; then
else
# Set property even if there is no insmod config
# to unblock early-boot trigger
setprop vendor.common.modules.ready
setprop vendor.device.modules.ready
setprop vendor.all.modules.ready
setprop vendor.all.devices.ready
setprop vendor.common.modules.ready 1
setprop vendor.device.modules.ready 1
setprop vendor.all.modules.ready 1
setprop vendor.all.devices.ready 1
exit 1
fi

View File

@ -10,5 +10,9 @@ allow insmod-sh vendor_kernel_modules:system module_load;
allow insmod-sh vendor_toolbox_exec:file execute_no_trans;
set_prop(insmod-sh, vendor_device_prop)
get_prop(insmod-sh, enable_16k_pages_prop)
allow insmod-sh kmsg_debug_device:chr_file { w_file_perms ioctl getattr };
dontaudit insmod-sh proc_cmdline:file r_file_perms;