Comments (9)
This was added to provide guidance to HW implementations for mitigating some kinds of speculation-based side-channel attacks: e.g., when in U-mode, don't speculatively refill the TLB for accesses to negative addresses.
from riscv-platform-specs.
This does not seem like the right way to "solve" that.
from riscv-platform-specs.
from riscv-platform-specs.
Well, clearly I think it's a good idea to have it, and no one had complained about it for over 3 years...
from riscv-platform-specs.
when in U-mode, don't speculatively refill the TLB for accesses to negative addresses.
Should it then be restated in this fashion?
from riscv-platform-specs.
What's wrong with just "when in U-mode, don't speculatively refill the TLB for accesses to pages without the U PTE bit"? Or are you concerned about timing attacks due to the side-effects of page-table walks too? If so that needs to be stated. But, this is really inflexible, it's effectively a heuristic for hardware to try not to leak timing information, it's not particularly robust, and is completely broken once you introduce the H extension. RISC-V's page table design is not split like Arm's, we shouldn't be trying to jam Arm's semantics into RISC-V's model. And whatever the solution is, it belongs in the ISA document, not a platform spec.
from riscv-platform-specs.
Yeah, getting to the point of being able to read the U bit is also part of the problem.
It arguably doesn't belong in the ISA spec, since it's not ISA-visible in the traditional sense.
from riscv-platform-specs.
Yeah, getting to the point of being able to read the U bit is also part of the problem.
It arguably doesn't belong in the ISA spec, since it's not ISA-visible in the traditional sense.
In the age of Spectre and Meltdown the ISA absolutely needs to be such that there are defences against these types of microarchitectural attacks. Other ISAs have speculation fences that are purely microarchitectural, for example, yet we have nothing.
from riscv-platform-specs.
Closing this issue as platform spec doesn't contain this anymore.
from riscv-platform-specs.
Related Issues (20)
- Missing LICENSE file HOT 10
- RVM platform requirements HOT 1
- How to handle non-coherent I/O masters HOT 5
- Inconsistent mtime requirements HOT 1
- CLIC requires original basic interrupt mode HOT 1
- both CLIC and CLINT seems to be used for the same thing HOT 4
- Hypervisor guard hole HOT 4
- relax "If Hypervisor extension is supported then the misa.H bit must be writable." HOT 2
- relax RAS precise exception on uncorrectable data HOT 2
- Server: System Date/Time: Improve explanation for GetTime() HOT 7
- Future interrupt controller of M platform
- Adopt the RISC-V documentation format HOT 1
- I/O ordering requirements (for non-PCIe devices) HOT 6
- Eventual completion for vacant memory HOT 17
- PCI ECAM requirements HOT 4
- Virtual timers require an offset value HOT 1
- PCI cache coherency HOT 4
- Specify word-size accesses to UART registers HOT 1
- A question about self/cross-modifying code (SMC/CMC)
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from riscv-platform-specs.