Re: [RFC PATCH 1/2] mm: introduce MAP_FIXED_SAFE

From: Florian Weimer
Date: Fri Nov 17 2017 - 02:31:14 EST

On 11/16/2017 11:18 AM, Michal Hocko wrote:
+ if (flags & MAP_FIXED_SAFE) {
+ struct vm_area_struct *vma = find_vma(mm, addr);
+ if (vma && vma->vm_start <= addr)
+ return -ENOMEM;
+ }

Could you pick a different error code which cannot also be caused by a an unrelated, possibly temporary condition? Maybe EBUSY or EEXIST?

This would definitely help with application-based randomization of mappings, and there, actual ENOMEM and this error would have to be handled differently.