From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-8.2 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_PASS,URIBL_BLOCKED, USER_AGENT_MUTT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id DBDEAC43382 for ; Thu, 27 Sep 2018 16:53:27 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 84C54216C4 for ; Thu, 27 Sep 2018 16:53:27 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 84C54216C4 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=suse.de Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728358AbeI0XMe (ORCPT ); Thu, 27 Sep 2018 19:12:34 -0400 Received: from mx2.suse.de ([195.135.220.15]:48168 "EHLO mx1.suse.de" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1727437AbeI0XMe (ORCPT ); Thu, 27 Sep 2018 19:12:34 -0400 X-Virus-Scanned: by amavisd-new at test-mx.suse.de Received: from relay2.suse.de (unknown [195.135.220.254]) by mx1.suse.de (Postfix) with ESMTP id BED1FAFF2; Thu, 27 Sep 2018 16:53:23 +0000 (UTC) Date: Thu, 27 Sep 2018 18:53:23 +0200 From: Borislav Petkov To: Lianbo Jiang Cc: linux-kernel@vger.kernel.org, kexec@lists.infradead.org, tglx@linutronix.de, mingo@redhat.com, hpa@zytor.com, x86@kernel.org, akpm@linux-foundation.org, dan.j.williams@intel.com, thomas.lendacky@amd.com, bhelgaas@google.com, baiyaowei@cmss.chinamobile.com, tiwai@suse.de, brijesh.singh@amd.com, dyoung@redhat.com, bhe@redhat.com, jroedel@suse.de Subject: Re: [PATCH v7 RESEND 2/4] kexec: allocate unencrypted control pages for kdump in case SME is enabled Message-ID: <20180927165323.GC19779@zn.tnic> References: <20180927071954.29615-1-lijiang@redhat.com> <20180927071954.29615-3-lijiang@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <20180927071954.29615-3-lijiang@redhat.com> User-Agent: Mutt/1.10.1 (2018-07-13) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, Sep 27, 2018 at 03:19:52PM +0800, Lianbo Jiang wrote: > When SME is enabled in the first kernel, we will allocate unencrypted pages > for kdump in order to be able to boot the kdump kernel like kexec. This is not what the commit does - it marks the control pages as decrypted when SME. Why doesn't the commit message state that and why is this being done? > Signed-off-by: Lianbo Jiang > Reviewed-by: Tom Lendacky > --- > kernel/kexec_core.c | 12 ++++++++++++ > 1 file changed, 12 insertions(+) > > diff --git a/kernel/kexec_core.c b/kernel/kexec_core.c > index 23a83a4da38a..e7efcd1a977b 100644 > --- a/kernel/kexec_core.c > +++ b/kernel/kexec_core.c > @@ -471,6 +471,16 @@ static struct page *kimage_alloc_crash_control_pages(struct kimage *image, > } > } > > + if (pages) { > + /* > + * For kdump, we need to ensure that these pages are > + * unencrypted pages if SME is enabled. Remember to always call unencrypted pages "decrypted" - this is the convention we agreed upon and it should keep the confusion level at minimum to others staring at this code. > + * By the way, it is unnecessary to call the arch_ > + * kexec_pre_free_pages(), which will make the code > + * become more simple. > + */ This second sentence I don't understand... > + arch_kexec_post_alloc_pages(page_address(pages), 1 << order, 0); > + } > return pages; > } > > @@ -867,6 +877,7 @@ static int kimage_load_crash_segment(struct kimage *image, > result = -ENOMEM; > goto out; > } > + arch_kexec_post_alloc_pages(page_address(page), 1, 0); > ptr = kmap(page); > ptr += maddr & ~PAGE_MASK; > mchunk = min_t(size_t, mbytes, > @@ -884,6 +895,7 @@ static int kimage_load_crash_segment(struct kimage *image, > result = copy_from_user(ptr, buf, uchunk); > kexec_flush_icache_page(page); > kunmap(page); > + arch_kexec_pre_free_pages(page_address(page), 1); > if (result) { > result = -EFAULT; > goto out; > -- > 2.17.1 > -- Regards/Gruss, Boris. SUSE Linux GmbH, GF: Felix Imendörffer, Jane Smithard, Graham Norton, HRB 21284 (AG Nürnberg) From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: Received: from mx2.suse.de ([195.135.220.15] helo=mx1.suse.de) by bombadil.infradead.org with esmtps (Exim 4.90_1 #2 (Red Hat Linux)) id 1g5ZY3-0001W4-CR for kexec@lists.infradead.org; Thu, 27 Sep 2018 16:53:57 +0000 Date: Thu, 27 Sep 2018 18:53:23 +0200 From: Borislav Petkov Subject: Re: [PATCH v7 RESEND 2/4] kexec: allocate unencrypted control pages for kdump in case SME is enabled Message-ID: <20180927165323.GC19779@zn.tnic> References: <20180927071954.29615-1-lijiang@redhat.com> <20180927071954.29615-3-lijiang@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20180927071954.29615-3-lijiang@redhat.com> List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "kexec" Errors-To: kexec-bounces+dwmw2=infradead.org@lists.infradead.org To: Lianbo Jiang Cc: thomas.lendacky@amd.com, jroedel@suse.de, brijesh.singh@amd.com, bhe@redhat.com, tiwai@suse.de, x86@kernel.org, kexec@lists.infradead.org, linux-kernel@vger.kernel.org, mingo@redhat.com, baiyaowei@cmss.chinamobile.com, hpa@zytor.com, bhelgaas@google.com, tglx@linutronix.de, dyoung@redhat.com, akpm@linux-foundation.org, dan.j.williams@intel.com T24gVGh1LCBTZXAgMjcsIDIwMTggYXQgMDM6MTk6NTJQTSArMDgwMCwgTGlhbmJvIEppYW5nIHdy b3RlOgo+IFdoZW4gU01FIGlzIGVuYWJsZWQgaW4gdGhlIGZpcnN0IGtlcm5lbCwgd2Ugd2lsbCBh bGxvY2F0ZSB1bmVuY3J5cHRlZCBwYWdlcwo+IGZvciBrZHVtcCBpbiBvcmRlciB0byBiZSBhYmxl IHRvIGJvb3QgdGhlIGtkdW1wIGtlcm5lbCBsaWtlIGtleGVjLgoKVGhpcyBpcyBub3Qgd2hhdCB0 aGUgY29tbWl0IGRvZXMgLSBpdCBtYXJrcyB0aGUgY29udHJvbCBwYWdlcyBhcwpkZWNyeXB0ZWQg d2hlbiBTTUUuIFdoeSBkb2Vzbid0IHRoZSBjb21taXQgbWVzc2FnZSBzdGF0ZSB0aGF0IGFuZCB3 aHkgaXMKdGhpcyBiZWluZyBkb25lPwoKPiBTaWduZWQtb2ZmLWJ5OiBMaWFuYm8gSmlhbmcgPGxp amlhbmdAcmVkaGF0LmNvbT4KPiBSZXZpZXdlZC1ieTogVG9tIExlbmRhY2t5IDx0aG9tYXMubGVu ZGFja3lAYW1kLmNvbT4KPiAtLS0KPiAga2VybmVsL2tleGVjX2NvcmUuYyB8IDEyICsrKysrKysr KysrKwo+ICAxIGZpbGUgY2hhbmdlZCwgMTIgaW5zZXJ0aW9ucygrKQo+IAo+IGRpZmYgLS1naXQg YS9rZXJuZWwva2V4ZWNfY29yZS5jIGIva2VybmVsL2tleGVjX2NvcmUuYwo+IGluZGV4IDIzYTgz YTRkYTM4YS4uZTdlZmNkMWE5NzdiIDEwMDY0NAo+IC0tLSBhL2tlcm5lbC9rZXhlY19jb3JlLmMK PiArKysgYi9rZXJuZWwva2V4ZWNfY29yZS5jCj4gQEAgLTQ3MSw2ICs0NzEsMTYgQEAgc3RhdGlj IHN0cnVjdCBwYWdlICpraW1hZ2VfYWxsb2NfY3Jhc2hfY29udHJvbF9wYWdlcyhzdHJ1Y3Qga2lt YWdlICppbWFnZSwKPiAgCQl9Cj4gIAl9Cj4gIAo+ICsJaWYgKHBhZ2VzKSB7Cj4gKwkJLyoKPiAr CQkgKiBGb3Iga2R1bXAsIHdlIG5lZWQgdG8gZW5zdXJlIHRoYXQgdGhlc2UgcGFnZXMgYXJlCj4g KwkJICogdW5lbmNyeXB0ZWQgcGFnZXMgaWYgU01FIGlzIGVuYWJsZWQuCgpSZW1lbWJlciB0byBh bHdheXMgY2FsbCB1bmVuY3J5cHRlZCBwYWdlcyAiZGVjcnlwdGVkIiAtIHRoaXMgaXMgdGhlCmNv bnZlbnRpb24gd2UgYWdyZWVkIHVwb24gYW5kIGl0IHNob3VsZCBrZWVwIHRoZSBjb25mdXNpb24g bGV2ZWwgYXQKbWluaW11bSB0byBvdGhlcnMgc3RhcmluZyBhdCB0aGlzIGNvZGUuCgo+ICsJCSAq IEJ5IHRoZSB3YXksIGl0IGlzIHVubmVjZXNzYXJ5IHRvIGNhbGwgdGhlIGFyY2hfCj4gKwkJICog a2V4ZWNfcHJlX2ZyZWVfcGFnZXMoKSwgd2hpY2ggd2lsbCBtYWtlIHRoZSBjb2RlCj4gKwkJICog YmVjb21lIG1vcmUgc2ltcGxlLgo+ICsJCSAqLwoKVGhpcyBzZWNvbmQgc2VudGVuY2UgSSBkb24n dCB1bmRlcnN0YW5kLi4uCgo+ICsJCWFyY2hfa2V4ZWNfcG9zdF9hbGxvY19wYWdlcyhwYWdlX2Fk ZHJlc3MocGFnZXMpLCAxIDw8IG9yZGVyLCAwKTsKPiArCX0KPiAgCXJldHVybiBwYWdlczsKPiAg fQo+ICAKPiBAQCAtODY3LDYgKzg3Nyw3IEBAIHN0YXRpYyBpbnQga2ltYWdlX2xvYWRfY3Jhc2hf c2VnbWVudChzdHJ1Y3Qga2ltYWdlICppbWFnZSwKPiAgCQkJcmVzdWx0ICA9IC1FTk9NRU07Cj4g IAkJCWdvdG8gb3V0Owo+ICAJCX0KPiArCQlhcmNoX2tleGVjX3Bvc3RfYWxsb2NfcGFnZXMocGFn ZV9hZGRyZXNzKHBhZ2UpLCAxLCAwKTsKPiAgCQlwdHIgPSBrbWFwKHBhZ2UpOwo+ICAJCXB0ciAr PSBtYWRkciAmIH5QQUdFX01BU0s7Cj4gIAkJbWNodW5rID0gbWluX3Qoc2l6ZV90LCBtYnl0ZXMs Cj4gQEAgLTg4NCw2ICs4OTUsNyBAQCBzdGF0aWMgaW50IGtpbWFnZV9sb2FkX2NyYXNoX3NlZ21l bnQoc3RydWN0IGtpbWFnZSAqaW1hZ2UsCj4gIAkJCXJlc3VsdCA9IGNvcHlfZnJvbV91c2VyKHB0 ciwgYnVmLCB1Y2h1bmspOwo+ICAJCWtleGVjX2ZsdXNoX2ljYWNoZV9wYWdlKHBhZ2UpOwo+ICAJ CWt1bm1hcChwYWdlKTsKPiArCQlhcmNoX2tleGVjX3ByZV9mcmVlX3BhZ2VzKHBhZ2VfYWRkcmVz cyhwYWdlKSwgMSk7Cj4gIAkJaWYgKHJlc3VsdCkgewo+ICAJCQlyZXN1bHQgPSAtRUZBVUxUOwo+ ICAJCQlnb3RvIG91dDsKPiAtLSAKPiAyLjE3LjEKPiAKCi0tIApSZWdhcmRzL0dydXNzLAogICAg Qm9yaXMuCgpTVVNFIExpbnV4IEdtYkgsIEdGOiBGZWxpeCBJbWVuZMO2cmZmZXIsIEphbmUgU21p dGhhcmQsIEdyYWhhbSBOb3J0b24sIEhSQiAyMTI4NCAoQUcgTsO8cm5iZXJnKQoKX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18Ka2V4ZWMgbWFpbGluZyBsaXN0 CmtleGVjQGxpc3RzLmluZnJhZGVhZC5vcmcKaHR0cDovL2xpc3RzLmluZnJhZGVhZC5vcmcvbWFp bG1hbi9saXN0aW5mby9rZXhlYwo=