On Wed, Jul 19, 2023 at 08:44:34AM +0300, Mike Rapoport wrote: > 3. Switch memblock to use bottom up allocations. Historically memblock > allocated memory from the top to avoid corrupting the kernel image and to > avoid exhausting precious ZONE_DMA. I believe we can use bottom-up > allocations with lower limit of memblock allocations set to 16M. > > With the hack below no memblock allocations will end up in ZONE_MOVABLE: Yep, I've confirmed that for my use cases at least this does the trick, thank you! I had thought about moving the memblock allocations, but had no idea it was (basically) already supported and thought it'd be much riskier than just adjusting where ZONE_MOVABLE lived. Is there a reason for this to not be a real option for users, maybe per a kernel config knob or something? I'm happy to explore other options in this thread, but this is doing the trick so far.