Hi, I didn't get to read though patches yet but the cover letter didn't really help me to understand the basic concepts to have a good starting point before diving into implementation details. It contains a lot of history remarks which is not bad but IMHO too excessive here. I would appreciate the following information (some of that is already provided in the cover but could benefit from some rewording/text reorganization).
- what is ZONE_CMA and how it is configured (from admin POV) - how does ZONE_CMA compare to other zones - who is allowed to allocate from this zone and what are the guarantees/requirements for successful allocation - how does the zone compare to a preallocate allocation pool - how is ZONE_CMA balanced/reclaimed due to internal memory pressure (from CMA users) - is this zone reclaimable for the global memory reclaim - why this was/is controversial -- Michal Hocko SUSE Labs