Load modules from /lib/modules for 4kb page size kernels when
the -d option is not present. Do not do this for 16kb page size kernels
due it will load the 4kb modules when PRODUCT_16K_DEVELOPER_OPTION
is true.
Depending on the value of PRODUCT_16K_DEVELOPER_OPTION, the
kernel modules can be located in several directories:
- true: There are 2 directories that contain the 4kb and 16kb
modules.
- 4kb modules are in /lib/modules
- 16kb modules are in /lib/modules/<uname -r>_16k
- false: There is only one directory that contains only one type
of the kernel modules, either 4kb or 16kb.
- /lib/modules
This is a temporary fix for the 16kb developer option. This
b/346659501 will track the proper fix.
Test: Boot target husky-trunk_staging-userdebug with developer
option.
Test: Boot target husky_pgagnostic-next-userdebug without developer
option.
Bug: 345609905
Bug: 343971855
Change-Id: I9bab33d9f06743bd10ee804b20db8f39467fcc52
If o_direct is enabled in build configuration, forward this argument to
snapuserd when the daemon is started.
Bug: 332255580
Test: th
Change-Id: I8e4be5503665031735dba2ebc748e209c45df942
It has been reported that CL "Make foreground and background I/O
priority different" causes Android devices equipped with eMMC storage
to reboot if there is sufficient I/O activity. Hence revert commit
7f3fe0aaf2.
Bug: 186902601
Bug: 342034992
Change-Id: I4fa9c782eb0e801b410cb358e20fe41acebe1094
Signed-off-by: Bart Van Assche <bvanassche@google.com>
Manually calling a defaulted default constructor from a another
constructor is superfluous, and can increase code size if the default
constructor is not otherwise used. There's nothing to delegate, so
remove the call.
Bug: 346584259
Test: m
Change-Id: Ia16aa041fdee7434587cf90645d7f95cba4e0d10
... instead of direct initialization in the default constructor
implementation. This allows us to just explicitly default the
constructor and provide no implementation.
Initialize class variables in the header and remove no-op constructor
to simplify code.
Bug: 346584259
Test: m
Change-Id: Iba57f5cfbf8e4d5d18ce178d39f8bcd2d76c8aaa
In I3aad4b4b1d2f54db9e7ba86db8a655d8552bad0a we set MaxPerformance
for zygote64_32, and in I7fcceeb22b722c2164b9acf0b517a32ce34731fd
we synced up zygote64 to match this.
However, this change never made it into the zygote32 rc file,
which we fix here.
Bug: 324014808
Test: Basic testing on 32-bit device
Change-Id: I6f0c4490330d05551952fd5d844e02a6b638ca68
When modules for multiple kernels with the same major/minor versions
are installed on a device, modprobe will search the module directories
based on whatever order scandir() returned them. In this case, it is
possible that we will try to load modules with the wrong page size for
the running kernel, which can lead to obscure symbol CRC mismatches and
ultimately a system crash.
Adjust the scandir() filtering function so that the kernel page size is
taken into account in addition to the major/minor versions returned by
utsname(). The general rule is that module directories ending in "_Nk"
contain modules for a page-size of N KiB, whilst the absence of such
a suffix implies the default of 4 KiB.
Bug: 343971855
Test: Verified that _16k module directory is excluded by modprobe when running in userspace fastboot with 4k pages.
Change-Id: I78a0a249028bbb0bcdd78eb14de36e631e233be0
For visibility.
We could make this only for new API levels, but it isn't
currently exposed at build time, and visibility is good
on upgrades.
Bug: 340953047
Test: build, on device passing and failing requirements
Change-Id: I3a0ea47560c65114bc1b8685954d1fb7687cb8df
This reverts commit 65430f8de6.
Reason for revert: Checking to see if this is the root cause for b/342673274.
Change-Id: I9bb319e73443e57b4ac0b61f5209048d5eb7e6c0
This reverts commit ffdb017e7d.
Overriding an explicitly-specified module path (e.g. passed via the
'-d <path>' argument) because the kernel is using 16KiB pages is
inconsistent and unexpected. Revert this change in anticipation of
filtering incompatible modules instead.
Bug: 343971855
Test: Verified that _16k module directory is excluded by modprobe when running in userspace fastboot with 4k pages.
Change-Id: If9c6e2d26fc53b12f543d531d64ef3d288ddc179