Files
android_kernel_xiaomi_sm8450/mm
Kalesh Singh 37d6ffe5ca ANDROID: 16K: Introduce ELF padding representation for VMAs
The dynamic linker may extend ELF LOAD segment mappings to be contiguous
in memory when loading a 16kB compatible ELF on a 4kB page-size system.
This is done to reduce the use of unreclaimable VMA slab memory for the
otherwise necessary "gap" VMAs. The extended portion of the mapping
(VMA) can be viewed as "padding", meaning that the mapping in that range
corresponds to an area of the file that does not contain contents of the
respective segments (maybe zero's depending on how the ELF is built).

For some compatibility mitigations, the region of a VMA corresponding to
these padding sections need to be known.

In order to represent such regions without adding addtional overhead or
breaking ABI, some upper bits of vm_flags are used.

Add the VMA padding pages representation and the necessary APIs to
manipulate it.

Bug: 330117029
Bug: 327600007
Bug: 330767927
Bug: 328266487
Bug: 329803029
Change-Id: Ieb9fa98e30ec9b0bec62256624f14e3ed6062a75
Signed-off-by: Kalesh Singh <kaleshsingh@google.com>
2024-05-02 15:06:13 -07:00
..
2023-12-08 16:26:36 +00:00
2021-06-04 11:15:16 -07:00
2021-04-30 09:13:34 -07:00
2023-02-17 15:23:41 +00:00
2021-04-15 14:23:41 +02:00
2023-09-19 11:32:32 +00:00
2021-11-26 15:37:44 +01:00
2022-09-29 17:06:30 +02:00