Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932452AbdIFN54 (ORCPT ); Wed, 6 Sep 2017 09:57:56 -0400 Received: from Galois.linutronix.de ([146.0.238.70]:48881 "EHLO Galois.linutronix.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932299AbdIFN5w (ORCPT ); Wed, 6 Sep 2017 09:57:52 -0400 Date: Wed, 6 Sep 2017 15:57:40 +0200 (CEST) From: Thomas Gleixner To: Boris Ostrovsky cc: Borislav Petkov , thomas.lendacky@amd.com, X86 ML , "linux-kernel@vger.kernel.org" , Ingo Molnar , "H. Peter Anvin" Subject: Re: SME/32-bit regression In-Reply-To: <86bcf09d-255d-3ad7-ecfe-497e3f57c4eb@oracle.com> Message-ID: References: <4c07148a-5d97-0fc2-aa9b-1db31429736d@oracle.com> <20170906092618.fkvzrqx32z6iqf2t@pd.tnic> <86bcf09d-255d-3ad7-ecfe-497e3f57c4eb@oracle.com> User-Agent: Alpine 2.20 (DEB 67 2015-01-07) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1102 Lines: 24 On Wed, 6 Sep 2017, Boris Ostrovsky wrote: > On 09/06/2017 05:26 AM, Borislav Petkov wrote: > > On Tue, Sep 05, 2017 at 11:45:07PM -0400, Boris Ostrovsky wrote: > >> It appears there is a regression for 32-bit kernels due to SME changes. > >> > >> I bisected my particular problem > > It being? Doesn't boot, splats? > > Xen guest crashes very early, before a splat can can be generated. > > > > >> (Xen PV guest) to > >> 21729f81ce8ae76a6995681d40e16f7ce8075db4 but I also saw pmd_clear_bad() > >> errors on baremetal. This seems to be caused by sme_me_mask being an > >> unsigned long as opposed to phys_addr_t (the actual problem is that > >> __PHYSICAL_MASK is truncated). When I declare it as u64 and drop unsigned > >> long cast in __sme_set()/__sme_clr() the problem goes way. (This presumably > >> won't work for non-PAE which I haven't tried). > > Right, so I think we should do this because those macros should not have > > any effect on !CONFIG_AMD_MEM_ENCRYPT setups. > > This won't help though if kernel is built with SME support. Which is not the case for 32bit. SME depends on 64bit