[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <8ea53aa4-34ee-15ab-c28c-04cf3c2e979b@linux.intel.com>
Date: Wed, 1 Nov 2017 08:53:18 -0700
From: Dave Hansen <dave.hansen@...ux.intel.com>
To: Linus Torvalds <torvalds@...ux-foundation.org>,
Andy Lutomirski <luto@...nel.org>
Cc: Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
linux-mm <linux-mm@...ck.org>, Kees Cook <keescook@...gle.com>,
Hugh Dickins <hughd@...gle.com>
Subject: Re: [PATCH 00/23] KAISER: unmap most of the kernel from userspace
page tables
On 10/31/2017 04:27 PM, Linus Torvalds wrote:
> So even if you don't want to have global pages for normal kernel
> entries, you don't want to just make _PAGE_GLOBAL be defined as zero.
> You'd want to just use _PAGE_GLOBAL conditionally.
I implemented this, then did a quick test with some code that does a
bunch of quick system calls:
> https://github.com/antonblanchard/will-it-scale/blob/master/tests/lseek1.c
It helps a wee bit (~3%) with PCIDs, and much more when PCIDs are not in
use (~15%). Here are the numbers: ("ge" means "Global Entry"):
no kaiser : 5.2M
kaiser+ pcid : 3.0M
kaiser+ pcid+ge: 3.1M
kaiser+nopcid : 2.2M
kaiser+nopcid+ge: 2.5M
This *does* use Global pages for the process stack (which is not idea),
but it sounds like Andy's entry stack stuff will get rid of the need to
do that in the first place.
Powered by blists - more mailing lists