From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andy Lutomirski Subject: Re: [PATCHv3 33/33] mm, x86: introduce PR_SET_MAX_VADDR and PR_GET_MAX_VADDR Date: Fri, 17 Feb 2017 09:21:47 -0800 Message-ID: References: <20170217141328.164563-1-kirill.shutemov@linux.intel.com> <20170217141328.164563-34-kirill.shutemov@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Return-path: In-Reply-To: Sender: linux-arch-owner@vger.kernel.org To: Dave Hansen Cc: "Kirill A. Shutemov" , Linus Torvalds , Andrew Morton , X86 ML , Thomas Gleixner , Ingo Molnar , Arnd Bergmann , "H. Peter Anvin" , Andi Kleen , linux-arch , "linux-mm@kvack.org" , "linux-kernel@vger.kernel.org" , Catalin Marinas , Linux API List-Id: linux-api@vger.kernel.org On Fri, Feb 17, 2017 at 9:19 AM, Dave Hansen wrote: > On 02/17/2017 06:13 AM, Kirill A. Shutemov wrote: >> +/* >> + * Default maximum virtual address. This is required for >> + * compatibility with applications that assumes 47-bit VA. >> + * The limit can be changed with prctl(PR_SET_MAX_VADDR). >> + */ >> +#define MAX_VADDR_DEFAULT ((1UL << 47) - PAGE_SIZE) > > This is a bit goofy. It's not the largest virtual adddress that can be > accessed, but the beginning of the last page. No, it really is the limit. We don't allow user code to map the last page because ti would be a root hole due to SYSRET. Thanks, Intel. See the comment near TASK_SIZE_MAX IIRC. --Andy