On Thu, 23 Jun 2022 11:22:52, H. Peter Anvin <hpa@xxxxxxxxx> wrote: >>On 6/22/22 23:24, lizhe.67@xxxxxxxxxxxxx wrote: >>> In our scenario, we need reserve or alloc large continous memory like >>> 256M in machine which have different memory specification at just >>> boot phase for a user land process. >> >>Just marking the memory reserved doesn't do any good by itself. There >>must be some *other* kernel code to find this reserved area and make it >>available to userspace. >> >>It seems kinda silly to add this to the kernel without also adding the >>other half of the solution. Plus, we don't really even know what this >>is for. Are there other, better solutions? I certainly can't offer any >>because this changelog did not provide a full picture of the problem >>this solves. > >Don't we already have a large contiguous physical memory allocator for this reason (misdesigned hardware?) Yes we have already considered using CMA to realize the requirement. But CMA only provides several kernel space interface for memory allocation. It seems that userspace do not have a way to access those memory at current kernel. In our scenario, we need to reserve large continuous physical memory for a userspace program. It stores some data into memory and a hardware will consume them. So allocing an area of large continuous memory for userspace program is the best way for us.