On 04/14/2017 02:18 AM, Zengtao (B) wrote:
> Hi 
> 
> Currently, the ion mapped to userspace will be forced with VM_IO and 
> VM_PFNMAP flags.
> When I use the ion memory to do the direct-io, it will fail when reaching the 
> get_user_pages,
> 
> Back to the VM_IO and VM_PFNMAP flag, there two flags are introduced by the 
> remap_pfn_range called 
> by the ion_heap_mmap_user.
> 
> From my point of view, all ion memory(cma/vmalloc/system heap) are managed by 
> linux vm, it
> is not reasonable to have the VM_IO and VM_PFNMAP flag, but I don't any 
> suitable function
> to replace the remap_pfn_range, any suggestions?
> 
> Thanks && Regards
> 
> Zengtao 
> 

The carveout heap is omitted from your list of 'all ion memory'. At one
time, carveout memory was not backed by struct pages so I suspect
this is a holdover from then. This would probably be better served
by using vm_insert_page and handling higher order pages properly.

Thanks,
Laura

Reply via email to