Pull RISC-V updates from Palmer Dabbelt: - Add byte/half-word compare-and-exchange, emulated via LR/SC loops - Support for Rust - Support for Zihintpause in hwprobe - Add PR_RISCV_SET_ICACHE_FLUSH_CTX prctl() - Support lockless lockrefs * tag 'riscv-for-linus-6.10-mw1' of git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux: (42 commits) riscv: defconfig: Enable CONFIG_CLK_SOPHGO_CV1800 riscv: select ARCH_HAS_FAST_MULTIPLIER riscv: mm: still create swiotlb buffer for kmalloc() bouncing if required riscv: Annotate pgtable_l{4,5}_enabled with __ro_after_init riscv: Remove redundant CONFIG_64BIT from pgtable_l{4,5}_enabled riscv: mm: Always use an ASID to flush mm contexts riscv: mm: Preserve global TLB entries when switching contexts riscv: mm: Make asid_bits a local variable riscv: mm: Use a fixed layout for the MM context ID riscv: mm: Introduce cntx2asid/cntx2version helper macros riscv: Avoid TLB flush loops when affected by SiFive CIP-1200 riscv: Apply SiFive CIP-1200 workaround to single-ASID sfence.vma riscv: mm: Combine the SMP and UP TLB flush code riscv: Only send remote fences when some other CPU is online riscv: mm: Broadcast kernel TLB flushes only when needed riscv: Use IPIs for remote cache/TLB flushes by default riscv: Factor out page table TLB synchronization riscv: Flush the instruction cache during SMP bringup riscv: hwprobe: export Zihintpause ISA extension riscv: misaligned: remove CONFIG_RISCV_M_MODE specific code ...
Showing the changes to include/uapi/linux (1 of 44 files). Show all
Unified · Split
| @@ -306,6 +306,12 @@ struct prctl_mm_map { · 305 unmodified lines | ||
| 306 | 306 | # define PR_RISCV_V_VSTATE_CTRL_NEXT_MASK 0xc |
| 307 | 307 | # define PR_RISCV_V_VSTATE_CTRL_MASK 0x1f |
| 308 | 308 | |
| 309 | +#define PR_RISCV_SET_ICACHE_FLUSH_CTX 71 | |
| 310 | +# define PR_RISCV_CTX_SW_FENCEI_ON 0 | |
| 311 | +# define PR_RISCV_CTX_SW_FENCEI_OFF 1 | |
| 312 | +# define PR_RISCV_SCOPE_PER_PROCESS 0 | |
| 313 | +# define PR_RISCV_SCOPE_PER_THREAD 1 | |
| 314 | + | |
| 309 | 315 | /* PowerPC Dynamic Execution Control Register (DEXCR) controls */ |
| 310 | 316 | #define PR_PPC_GET_DEXCR 72 |
| 311 | 317 | #define PR_PPC_SET_DEXCR 73 |