From: lijiang <lijiang@redhat.com>
To: Baoquan He <bhe@redhat.com>
Cc: linux-kernel@vger.kernel.org, joro@8bytes.org, mingo@redhat.com,
ebiederm@xmission.com, hpa@zytor.com, tglx@linutronix.de,
Dave Young <dyoung@redhat.com>,
"Lendacky, Thomas" <thomas.lendacky@amd.com>,
kexec@lists.infradead.org
Subject: Re: [PATCH 1/4 v8] x86/ioremap: add a function ioremap_encrypted() to remap kdump old memory
Date: Thu, 27 Sep 2018 13:12:16 +0800 [thread overview]
Message-ID: <db7caa5e-76fa-7b1c-b93d-29a4a978d37c@redhat.com> (raw)
In-Reply-To: <20180927020647.GH2555@MiWiFi-R3L-srv>
在 2018年09月27日 10:06, Baoquan He 写道:
> Hi Lianbo,
>
> On 09/26/18 at 05:34pm, lijiang wrote:
>> When SME is enabled on AMD machine, the memory is encrypted in the first
>> kernel. In this case, SME also needs to be enabled in kdump kernel, and
>> we have to remap the old memory with the memory encryption mask.
>>
>> Here we only talk about the case that SME is active in the first kernel,
>> and only care it's active too in kdump kernel. there are four cases we
>> need considered.
>>
>> a. dump vmcore
>> It is encrypted in the first kernel, and needs be read out in kdump
>> kernel.
>>
>> b. crash notes
>> When dumping vmcore, the people usually need to read the useful
>> information from notes, and the notes is also encrypted.
>>
>> c. iommu device table
>> It is allocated by kernel, need fill its pointer into mmio of amd iommu.
>> It's encrypted in the first kernel, need read the old content to analyze
>> and get useful information.
>>
>> d. mmio of amd iommu
>> Register reported by amd firmware, it's not RAM, we don't encrypt in
>> both the first kernel and kdump kernel.
>>
>> To achieve the goal, the solution is:
>> 1. add a new bool parameter "encrypted" to __ioremap_caller()
>> It is a low level function, and check the newly added parameter, if it's
>> true and in kdump kernel, will remap the memory with sme mask.
>>
>> 2. add a new function ioremap_encrypted() to explicitly passed in a "true"
>> value for "encrypted".
>> For above a, b, c, we will call ioremap_encrypted();
>>
>> 3. adjust all existed ioremap wrapper functions, passed in "false" for
>> encrypted to make them an before.
>>
>> ioremap_encrypted()\
>> ioremap_cache() |
>> ioremap_prot() |
>> ioremap_wt() |->__ioremap_caller()
>> ioremap_wc() |
>> ioremap_uc() |
>> ioremap_nocache() /
>
> Thanks, I think it's better. Since no code change, just patch log
> improvement, maybe you can repost a series and carry both Tom and
> Joerg's ACK.
>
Thank you, Baoquan.
I will resend a series, and add Tom's Reviewed-by for all patches, also
add Joerg's Acked-by for patch 3/4.
Thanks.
Lianbo
next prev parent reply other threads:[~2018-09-27 5:12 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-09-07 8:18 [PATCH 0/4 v7] Support kdump for AMD secure memory encryption(SME) Lianbo Jiang
2018-09-07 8:18 ` [PATCH 1/4 v7] x86/ioremap: add a function ioremap_encrypted() to remap kdump old memory Lianbo Jiang
2018-09-26 2:21 ` Baoquan He
[not found] ` <e6cd5448-b314-e142-1169-9e3e907faf16@redhat.com>
2018-09-26 6:25 ` lijiang
2018-09-26 9:34 ` [PATCH 1/4 v8] " lijiang
2018-09-27 2:06 ` Baoquan He
2018-09-27 5:12 ` lijiang [this message]
2018-09-07 8:18 ` [PATCH 2/4 v7] kexec: allocate unencrypted control pages for kdump in case SME is enabled Lianbo Jiang
2018-09-07 8:18 ` [PATCH 3/4 v7] amd_iommu: remap the device table of IOMMU with the memory encryption mask for kdump Lianbo Jiang
2018-09-25 12:04 ` Joerg Roedel
2018-09-27 2:40 ` lijiang
2018-09-07 8:18 ` [PATCH 4/4 v7] kdump/vmcore: support encrypted old memory with SME enabled Lianbo Jiang
2018-09-25 19:10 ` [PATCH 0/4 v7] Support kdump for AMD secure memory encryption(SME) Lendacky, Thomas
[not found] ` <bdf6961d-3013-f707-bfc9-c55f0c02aba0@redhat.com>
2018-09-26 6:03 ` lijiang
2018-09-29 15:43 [PATCH 0/4 v8] " Lianbo Jiang
2018-09-29 15:43 ` [PATCH 1/4 v8] x86/ioremap: add a function ioremap_encrypted() to remap kdump old memory Lianbo Jiang
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=db7caa5e-76fa-7b1c-b93d-29a4a978d37c@redhat.com \
--to=lijiang@redhat.com \
--cc=bhe@redhat.com \
--cc=dyoung@redhat.com \
--cc=ebiederm@xmission.com \
--cc=hpa@zytor.com \
--cc=joro@8bytes.org \
--cc=kexec@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@redhat.com \
--cc=tglx@linutronix.de \
--cc=thomas.lendacky@amd.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).