Re: [PATCHv3 33/33] mm, x86: introduce PR_SET_MAX_VADDR and PR_GET_MAX_VADDR
From: Kirill A. Shutemov <hidden>
Date: 2017-02-22 13:05:03
Also in:
linux-api, lkml
From: Kirill A. Shutemov <hidden>
Date: 2017-02-22 13:05:03
Also in:
linux-api, lkml
On Tue, Feb 21, 2017 at 12:46:55PM -0800, Dave Hansen wrote:
Let me make sure I'm grokking what you're trying to do here. On 02/20/2017 05:15 AM, Kirill A. Shutemov wrote:quoted
+/* MPX cannot handle addresses above 47-bits yet. */ +unsigned long mpx_unmapped_area_check(unsigned long addr, unsigned long len, + unsigned long flags) +{ + if (!kernel_managing_mpx_tables(current->mm)) + return addr; + if (addr + len <= DEFAULT_MAP_WINDOW) + return addr;At this point, we know MPX management is on and the hint is for memory above DEFAULT_MAP_WINDOW?
Right.
quoted
+ if (flags & MAP_FIXED) + return -ENOMEM;... and if it's a MAP_FIXED request, fail it.
Yep.
quoted
+ if (len > DEFAULT_MAP_WINDOW) + return -ENOMEM;What is this case for? If addr+len wraps?
If len is too big to fit into DEFAULT_MAP_WINDOW there's no point in resetting hint address as we know we can't satisfy it -- fail early.
quoted
+ /* Look for unmap area within DEFAULT_MAP_WINDOW */ + return 0; +}Otherwise, blow away the hint, which we know is high and needs to be discarded?
Right. -- Kirill A. Shutemov -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>