Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751763AbeAPTbi (ORCPT + 1 other); Tue, 16 Jan 2018 14:31:38 -0500 Received: from smtp.ctxuk.citrix.com ([185.25.65.24]:27934 "EHLO SMTP.EU.CITRIX.COM" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750811AbeAPTbg (ORCPT ); Tue, 16 Jan 2018 14:31:36 -0500 X-IronPort-AV: E=Sophos;i="5.46,369,1511827200"; d="scan'208";a="66151019" Subject: Re: [RFC PATCH 00/16] PTI support for x86-32 To: Linus Torvalds , Joerg Roedel CC: Thomas Gleixner , Ingo Molnar , "H . Peter Anvin" , the arch/x86 maintainers , Linux Kernel Mailing List , linux-mm , Andy Lutomirski , Dave Hansen , Josh Poimboeuf , Juergen Gross , Peter Zijlstra , Borislav Petkov , Jiri Kosina , Boris Ostrovsky , Brian Gerst , David Laight , Denys Vlasenko , Eduardo Valentin , Greg KH , Will Deacon , "Liguori, Anthony" , Daniel Gruss , Hugh Dickins , Kees Cook , Andrea Arcangeli , Waiman Long , Joerg Roedel , Juergen Gross , Jan Beulich References: <1516120619-1159-1-git-send-email-joro@8bytes.org> From: Andrew Cooper Message-ID: Date: Tue, 16 Jan 2018 19:21:00 +0000 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.5.2 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 8bit Content-Language: en-GB X-ClientProxiedBy: AMSPEX02CAS02.citrite.net (10.69.22.113) To AMSPEX02CL01.citrite.net (10.69.22.125) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Return-Path: On 16/01/18 18:59, Linus Torvalds wrote: > On Tue, Jan 16, 2018 at 8:36 AM, Joerg Roedel wrote: >> One of the things that are surely broken is XEN_PV support. >> I'd appreciate any help with testing and bugfixing on that >> front. > Xen PV and PTI don't work together even on x86-64 afaik, the Xen > people apparently felt it wasn't worth it. See the > > if (hypervisor_is_type(X86_HYPER_XEN_PV)) { > pti_print_if_insecure("disabled on XEN PV."); > return; > } 64bit PV guests under Xen already have split pagetables.  It is a base and necessary part of the ABI, because segment limits stopped working in 64bit. 32bit PV guests aren't split, but by far the most efficient way of doing this is to introduce a new enlightenment and have Xen switch all this stuff (and IBRS, for that matter) on behalf of the guest kernel on context switch. ~Andrew