[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <a58c4cde-6212-29f3-080a-f4e50221db21@huawei.com>
Date: Thu, 17 Jun 2021 17:38:27 +0800
From: "Sunnanyong (Nanyong Sun, Intelligent Computing Solution Development
Dep)" <sunnanyong@...wei.com>
To: <paul.walmsley@...ive.com>, <palmer@...belt.com>,
<aou@...s.berkeley.edu>, <anup.patel@....com>
CC: <linux-riscv@...ts.infradead.org>, <linux-kernel@...r.kernel.org>,
<palmerdabbelt@...gle.com>, <atish.patra@....com>,
<wangkefeng.wang@...wei.com>
Subject: Re: [PATCH -next] riscv: mm: remove redundant trampoline PGD for
64bit
On 2021/5/27 22:48, Nanyong Sun wrote:
> Remove redundant trampoline PGD for 64bit and add more comment
> for why 32bit systems need trampoline PGD.
>
> There was a patch and discussion similar to this,refer to
> the link [1][2].
>
> The trampoline PGD is redundant for 64bit systems because:
> 1. The early PGD covers the entire kernel mapping. Directly
> loading early PGD can achieve the result in boot stage.
> A more trampoline PGD makes code hard to understand.
> 2. Directly loading early PGD is safe in 64bit systems since
> the kernel virtual address starts as 0xFFFFxxxxxxxxxxxx,
> which has a very big gap with RAM address.It won't fall into
> the corner case that 32bit system worrys.
> 3. Remove redundant trampoline PGD can benefit to code maintaince,
> because 64bit systems have more page table levels.For example:
> If we want to support SV48 which has 4 page table levels, we have
> to add a trampoline_pud and insert it before trampoline_pmd.
>
> Reference link:
> [1]https://lore.kernel.org/linux-riscv/20190325092234.5451-4-anup.patel@wdc.com/
> [2]https://lkml.org/lkml/2019/3/28/147
Long time no response.
Hi anup,
do you agree this?
Powered by blists - more mailing lists