Received: by 2002:ac0:a581:0:0:0:0:0 with SMTP id m1-v6csp3711228imm; Mon, 2 Jul 2018 04:19:58 -0700 (PDT) X-Google-Smtp-Source: AAOMgpcvraDzHO021P58gjL6/E0GaymaAIpEcMogQooywUUISnVAcPpNCULhNGjFLFXlBD2tKaz5 X-Received: by 2002:a62:6659:: with SMTP id a86-v6mr8153373pfc.31.1530530398734; Mon, 02 Jul 2018 04:19:58 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1530530398; cv=none; d=google.com; s=arc-20160816; b=hDKmJeWXn3lDXq2BUvjZy48zRJ1/k9aAdi/tew8m9nH/B2yP+e9GXieaCm59vpadi0 78eviq18RjHoyHUBgnQ+gCh0NpoVt3V9tUMn+mC4LvWTputLVxgIHcsTyAZIyo4Ler0n hXg5HPpMIv21nDca8rgYBwS3AtblTfnbl3aWHzo2yHSQ7h7FfDtsesLj1mRnSOgKWu6o J5K7rjKZZ8PvD7VOk2GO3t27h5SeUVODUqt763iCrdtzZa/RWh8hI2w2S+0RJWCMlMV/ pTYHdI/W4wsh8B5Y0CwzQkZCRQLypUv0GCyPER4d+5cynYDwN39d4LoFeCqkf4toBn8v 1AUA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-disposition:mime-version:references:message-id:subject:cc :to:from:date:arc-authentication-results; bh=qn13eqRgXQ2wc5ouCxmHLSPC7HQ3OxM1nxyZi/sjlhY=; b=F+RYdX+ejnwPuuD/OOLYwpuq9uS1Rw/+QGcOY9SfKnGWnAi2Cj3Zox7xfdy1ecrs1x Z/W1mjUBqs9Q4hP6VyujIBA0tvSgM5EWeHVx/Mr5cuVvBvxIQIhdoDh4Ngu9xBzbbycQ /u4bSkfKqsmdVukOKADbQE65HcoYdCLOEuF6hp447v+i8sLeAaC8VK8hid+tTAMClBSW rTrNBD4r5ldPqoRyIgjxcwu5c2Q+YKCArDtRJWb3z9aKnPMkKkF7glI8E2qvYjaQbxxC 8L/QGy8naxQrUCeNo4dKJSibY3JgGk3KBfcS8pk2CFDJYmlm0jDLB+8ghaUhP1y5WuG2 9TxQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id l68-v6si14121525pgl.84.2018.07.02.04.19.44; Mon, 02 Jul 2018 04:19:58 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S965361AbeGBKPC (ORCPT + 99 others); Mon, 2 Jul 2018 06:15:02 -0400 Received: from mail.skyhub.de ([5.9.137.197]:44092 "EHLO mail.skyhub.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S965308AbeGBKO6 (ORCPT ); Mon, 2 Jul 2018 06:14:58 -0400 X-Virus-Scanned: Nedap ESD1 at mail.skyhub.de Received: from mail.skyhub.de ([127.0.0.1]) by localhost (blast.alien8.de [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id EhrGR3sYAYa9; Mon, 2 Jul 2018 12:14:57 +0200 (CEST) Received: from zn.tnic (p200300EC2BE39200329C23FFFEA6A903.dip0.t-ipconnect.de [IPv6:2003:ec:2be3:9200:329c:23ff:fea6:a903]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.skyhub.de (SuperMail on ZX Spectrum 128k) with ESMTPSA id 545221EC02EB; Mon, 2 Jul 2018 12:14:57 +0200 (CEST) Date: Mon, 2 Jul 2018 12:14:51 +0200 From: Borislav Petkov To: Lianbo Jiang Cc: linux-kernel@vger.kernel.org, mingo@redhat.com, tglx@linutronix.de, hpa@zytor.com, ebiederm@xmission.com, joro@8bytes.org, thomas.lendacky@amd.com, dyoung@redhat.com, kexec@lists.infradead.org, iommu@lists.linux-foundation.org, bhe@redhat.com Subject: Re: [PATCH 1/5 V5] Add a function(ioremap_encrypted) for kdump when AMD sme enabled Message-ID: <20180702101451.GB28730@zn.tnic> References: <20180702072639.10110-1-lijiang@redhat.com> <20180702072639.10110-2-lijiang@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <20180702072639.10110-2-lijiang@redhat.com> User-Agent: Mutt/1.9.5 (2018-04-13) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, Jul 02, 2018 at 03:26:35PM +0800, Lianbo Jiang wrote: > @@ -131,7 +132,8 @@ static void __ioremap_check_mem(resource_size_t addr, unsigned long size, > * caller shouldn't need to know that small detail. > */ > static void __iomem *__ioremap_caller(resource_size_t phys_addr, > - unsigned long size, enum page_cache_mode pcm, void *caller) > + unsigned long size, enum page_cache_mode pcm, > + void *caller, bool encrypted) So instead of sprinkling that @encrypted argument everywhere and then setting it based on sme_active() ... > { > unsigned long offset, vaddr; > resource_size_t last_addr; > @@ -199,7 +201,7 @@ static void __iomem *__ioremap_caller(resource_size_t phys_addr, > * resulting mapping. > */ > prot = PAGE_KERNEL_IO; > - if (sev_active() && mem_flags.desc_other) > + if ((sev_active() && mem_flags.desc_other) || encrypted) ... why can't you simply do your checks: sme_active() && is_kdump_kernel() here so that __ioremap_caller() can automatically choose the proper pgprot value when ioremapping the memory in the kdump kernel? And this way the callers don't even have to care whether the memory is encrypted or not? > prot = pgprot_encrypted(prot); > > switch (pcm) { -- Regards/Gruss, Boris. Good mailing practices for 400: avoid top-posting and trim the reply.