|
Re: Non-idempotent PMA and table walk accesses
For reference here is ARMv8's definition of idempotency (which includes side-effects):
Put very concisely (and stripped down a bit): Reads and writes can be repeated without side-effects, and reads
For reference here is ARMv8's definition of idempotency (which includes side-effects):
Put very concisely (and stripped down a bit): Reads and writes can be repeated without side-effects, and reads
|
By
Greg Favor
·
#121
·
|
|
Re: Non-idempotent PMA and table walk accesses
P.S. This stripped down ARMv8 definition goes a little further than what is currently in the Privileged spec - which only says that accesses are non-idempotent if reads and/or writes have any side
P.S. This stripped down ARMv8 definition goes a little further than what is currently in the Privileged spec - which only says that accesses are non-idempotent if reads and/or writes have any side
|
By
Greg Favor
·
#122
·
|
|
Re: Non-idempotent PMA and table walk accesses
To clarify, in my previous email, I was taking a rather narrow view of the idempotent/non-idempotent attribute as applied to a memory location. One could broaden that definition to include system
To clarify, in my previous email, I was taking a rather narrow view of the idempotent/non-idempotent attribute as applied to a memory location. One could broaden that definition to include system
|
By
David Kruckemyer
·
#123
·
|
|
Re: Non-idempotent PMA and table walk accesses
Of course I meant “non-idempotent”... discouraging page-table accesses to idempotent regions might raise some hackles.
Of course I meant “non-idempotent”... discouraging page-table accesses to idempotent regions might raise some hackles.
|
By
Andrew Waterman
·
#124
·
|
|
Re: Non-idempotent PMA and table walk accesses
> That sounds a bit like a performance counter to me, but it does
> raise an interesting question whether "idempotent" in the
> architectural sense is idempotent in a mathematical sense
>
> That sounds a bit like a performance counter to me, but it does
> raise an interesting question whether "idempotent" in the
> architectural sense is idempotent in a mathematical sense
>
|
By
Nikhil Rishiyur
·
#125
·
|
|
Re: Non-idempotent PMA and table walk accesses
Agreed that the counter in your example can be important to system operation.
OK, I'm fine with this. I still think this PMA confounds the notion of idempotency with speculation control (i.e.
Agreed that the counter in your example can be important to system operation.
OK, I'm fine with this. I still think this PMA confounds the notion of idempotency with speculation control (i.e.
|
By
David Kruckemyer
·
#126
·
|
|
Extending the number of PMP entries
Hi everyone,
Can we allocate more CSRs so that we can have more PMP entries available? We already have one implementation which requires 20 PMP entries, for example.
Currently the CSR address
Hi everyone,
Can we allocate more CSRs so that we can have more PMP entries available? We already have one implementation which requires 20 PMP entries, for example.
Currently the CSR address
|
By
Mr Tariq Kurd <tariq.kurd@...>
·
#127
·
|
|
Re: Extending the number of PMP entries
The other option here is to allocate all 48 at once (and for your example 20-63 would be read-only-zero). This might be slightly easier for software portability and is neutral for HW cost.
👍
The other option here is to allocate all 48 at once (and for your example 20-63 would be read-only-zero). This might be slightly easier for software portability and is neutral for HW cost.
👍
|
By
Andrew Waterman
·
#128
·
|
|
Re: Extending the number of PMP entries
Hi Andrew,
That’s fine for me. Implementing 0 / 16 / 64 PMP entries is ok
Tariq
From: Andrew Waterman [mailto:andrew@...]
Sent: 21 May 2020 17:50
To: Tariq Kurd <tariq.kurd@...>
Cc:
Hi Andrew,
That’s fine for me. Implementing 0 / 16 / 64 PMP entries is ok
Tariq
From: Andrew Waterman [mailto:andrew@...]
Sent: 21 May 2020 17:50
To: Tariq Kurd <tariq.kurd@...>
Cc:
|
By
Mr Tariq Kurd <tariq.kurd@...>
·
#129
·
|
|
Re: Extending the number of PMP entries
I've made a pull request to extend the number of PMP entries, and have attached the compiled PDF for convenience. Feedback and error detection are appreciated: the fact that there used to be 16 PMP
I've made a pull request to extend the number of PMP entries, and have attached the compiled PDF for convenience. Feedback and error detection are appreciated: the fact that there used to be 16 PMP
|
By
Andrew Waterman
·
#130
·
|
|
Re: Extending the number of PMP entries
Just writing to confirm that there is no information regards to the # of PMP entries supported by hart mentioned in privilege spec . If my understanding is correct, then this information is good to go
Just writing to confirm that there is no information regards to the # of PMP entries supported by hart mentioned in privilege spec . If my understanding is correct, then this information is good to go
|
By
Abner Chang <abner.chang@...>
·
#131
·
|
|
Re: Extending the number of PMP entries
The situation hasn't changed: it has always been straightforward to write M-mode software to detect the number of PMP registers at runtime, relying on precise exceptions. IMO, that means this stuff
The situation hasn't changed: it has always been straightforward to write M-mode software to detect the number of PMP registers at runtime, relying on precise exceptions. IMO, that means this stuff
|
By
Andrew Waterman
·
#132
·
|
|
Re: Extending the number of PMP entries
This is not needed. We can easily probe number of PMP registers using illegal instruction traps. Look at latest OpenSBI sources.
Regards,
Anup
From: tech-privileged@... <tech-privileged@...>On
This is not needed. We can easily probe number of PMP registers using illegal instruction traps. Look at latest OpenSBI sources.
Regards,
Anup
From: tech-privileged@... <tech-privileged@...>On
|
By
Anup Patel
·
#133
·
|
|
Re: Extending the number of PMP entries
Andrew, the intention of Configuration Structure task group is to define RISC-V core/hart hardware features in the configuration structure and retrieved by M-mode software without probing the
Andrew, the intention of Configuration Structure task group is to define RISC-V core/hart hardware features in the configuration structure and retrieved by M-mode software without probing the
|
By
Abner Chang <abner.chang@...>
·
#134
·
|
|
Re: Extending the number of PMP entries
Missed this mail while I was replying to Andrew. Same feedback to your comment in that reply.
From: tech-privileged@... [mailto:tech-privileged@...]On Behalf Of Anup Patel
Sent: Monday, May 25,
Missed this mail while I was replying to Andrew. Same feedback to your comment in that reply.
From: tech-privileged@... [mailto:tech-privileged@...]On Behalf Of Anup Patel
Sent: Monday, May 25,
|
By
Abner Chang <abner.chang@...>
·
#135
·
|
|
Re: Extending the number of PMP entries
You are free to add it in “RISC-V configuration structure” but from Linux, Hypervisors and M-mode RUNTIME firmware perspective we don’t’ need it.
All these software will:
Either use
You are free to add it in “RISC-V configuration structure” but from Linux, Hypervisors and M-mode RUNTIME firmware perspective we don’t’ need it.
All these software will:
Either use
|
By
Anup Patel
·
#136
·
|
|
Re: Extending the number of PMP entries
Same understanding here Anup. The most of uses are runtime debug, trace, compliance validation and POST time firmware (configures H/W and also builds up DT for the software you mentioned).
Abner
Same understanding here Anup. The most of uses are runtime debug, trace, compliance validation and POST time firmware (configures H/W and also builds up DT for the software you mentioned).
Abner
|
By
Abner Chang <abner.chang@...>
·
#137
·
|
|
Re: Extending the number of PMP entries
Thanks for this Andrew, it’s really useful.
My only comment is:
“Up to 64 PMP entries are supported. Implementations may implement zero, 16, or 64 PMP CSRs. All PMP CSR fields are WARL and
Thanks for this Andrew, it’s really useful.
My only comment is:
“Up to 64 PMP entries are supported. Implementations may implement zero, 16, or 64 PMP CSRs. All PMP CSR fields are WARL and
|
By
Mr Tariq Kurd <tariq.kurd@...>
·
#138
·
|
|
Re: Extending the number of PMP entries
I see what you're getting at, but since some vendors will (rightly) choose to hardwire some PMP registers, the sentiment seems impractical to enforce.
I see what you're getting at, but since some vendors will (rightly) choose to hardwire some PMP registers, the sentiment seems impractical to enforce.
|
By
Andrew Waterman
·
#139
·
|
|
Re: Extending the number of PMP entries
I don’t think I understand the your comment, Andrew. I interpreted Tariq saying we essentially restrict RdOnly zero entries to always be the larger numbered ones.
(Sort is the way that HartIndexes
I don’t think I understand the your comment, Andrew. I interpreted Tariq saying we essentially restrict RdOnly zero entries to always be the larger numbered ones.
(Sort is the way that HartIndexes
|
By
Allen Baum
·
#140
·
|