[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v3] target/riscv: update checks on writing pmpcfg for Smepmp
From: |
Himanshu Chauhan |
Subject: |
Re: [PATCH v3] target/riscv: update checks on writing pmpcfg for Smepmp |
Date: |
Tue, 19 Sep 2023 11:12:48 +0530 |
> On 19-Sep-2023, at 10:51 AM, Alistair Francis <alistair23@gmail.com> wrote:
>
> On Tue, Sep 19, 2023 at 3:08 PM Chang Alvin <vivahavey@gmail.com> wrote:
>>
>>> -----Original Message-----
>>
>>> From: Alistair Francis <alistair23@gmail.com>
>>
>>> Sent: Tuesday, September 19, 2023 12:42 PM
>>
>>> To: Alvin Che-Chia Chang(張哲嘉) <alvinga@andestech.com>
>>
>>> Cc: qemu-riscv@nongnu.org; qemu-devel@nongnu.org;
>>
>>> alistair.francis@wdc.com; ajones@ventanamicro.com
>>
>>> Subject: Re: [PATCH v3] target/riscv: update checks on writing pmpcfg for
>>
>>> Smepmp to version 1.0
>>
>>>
>>
>>> On Fri, Sep 15, 2023 at 6:32 PM Alvin Chang <alvinga@andestech.com> wrote:
>>
>>>>
>>
>>>> Current checks on writing pmpcfg for Smepmp follows Smepmp version
>>
>>>> 0.9.1. However, Smepmp specification has already been ratified, and
>>
>>>> there are some differences between version 0.9.1 and 1.0. In this
>>
>>>> commit we update the checks of writing pmpcfg to follow Smepmp version
>>
>>>> 1.0.
>>
>>>>
>>
>>>> When mseccfg.MML is set, the constraints to modify PMP rules are:
>>
>>>> 1. Locked rules cannot be removed or modified until a PMP reset, unless
>>
>>>> mseccfg.RLB is set.
>>
>>>> 2. From Smepmp specification version 1.0, chapter 2 section 4b:
>>
>>>> Adding a rule with executable privileges that either is M-mode-only
>>
>>>> or a locked Shared-Region is not possible and such pmpcfg writes are
>>
>>>> ignored, leaving pmpcfg unchanged.
>>
>>>>
>>
>>>> The commit transfers the value of pmpcfg into the index of the Smepmp
>>
>>>> truth table, and checks the rules by aforementioned specification
>>
>>>> changes.
>>
>>>>
>>
>>>> Signed-off-by: Alvin Chang <alvinga@andestech.com>
>>
>>>> ---
>>
>>>> Changes from v2: Adopt switch case ranges and numerical order.
>>
>>>>
>>
>>>> Changes from v1: Convert ePMP over to Smepmp.
>>
>>>
>>
>>> Did this part get lost?
>>
>>>
>>
>>> Alistair
>>
>>>
>>
>>
>> Sorry, do you mean that the term "ePMP" should be changed to "Smepmp" in
>> source code?
>
> We still call it epmp to users and it's still marked as experimental.
>
> See this line in the QEMU source:
>
> MULTI_EXT_CFG_BOOL("x-epmp", epmp, false),
>
> Alistair
I had sent a patch to rename epmp to Smepmp
https://www.mail-archive.com/qemu-devel@nongnu.org/msg967676.html
Regards
Himanshu