> On Jul 13, 2022, at 1:26 PM, Peter Zijlstra <peterz@xxxxxxxxxxxxx> wrote: > > On Wed, Jul 13, 2022 at 03:48:35PM +0000, Song Liu wrote: > >>> So how about instead we separate them? Then much of the problem goes >>> away, you don't need to track these 2M chunks at all. >> >> If we manage the memory in < 2MiB granularity, either 4kB or smaller, >> we still need some way to track which parts are being used, no? I mean >> the bitmap. > > I was thinking the vmalloc vmap_area tree could help out there. Interesting. vmap_area tree indeed keeps a lot of useful information. Currently, powerpc supports CONFIG_ARCH_WANTS_MODULES_DATA_IN_VMALLOC, which leaves module_alloc just for module text. If this works, we get separation between RO+X and RW memory. What would it take to enable CONFIG_ARCH_WANTS_MODULES_DATA_IN_VMALLOC for x86_64? Thanks, Song