mirror of https://github.com/torvalds/linux.git
- Add support for control flow integrity for userspace processes. This is based on the standard RISC-V ISA extensions Zicfiss and Zicfilp - Improve ptrace behavior regarding vector registers, and add some selftests - Optimize our strlen() assembly - Enable the ISO-8859-1 code page as built-in, similar to ARM64, for EFI volume mounting - Clean up some code slightly, including defining copy_user_page() as copy_page() rather than memcpy(), aligning us with other architectures; and using max3() to slightly simplify an expression in riscv_iommu_init_check() -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEElRDoIDdEz9/svf2Kx4+xDQu9KksFAmmOYpYACgkQx4+xDQu9 KkvzOQ/9Fq8ZxWgYofhTPtw9/vps3avheOHlEoRrBWYfn1VkTRPAcbUULL4PGXwg dnVFEl3AcrpOFikIthbukklLeLoOnUshZJBU25zY5h0My1jb63V1//gEwJR6I0dg +V+GJmfzc4+YVaHK6UFdn7j3GgKUbTC7xXRMuGEriAzKPnm3AXAjh94wMNx6depv Li3IXRoZT/HvqIAyfeAoM9STwOzJtE3Sc6fXABkzsIbNTjjdgIqoRSsQsKY10178 z6ox/sVStnLmVaMbOd/ZVN0J70JRDsvK0TC0/13K1ESUbnVia9a3bPIxLRmSapKC wXnwAuSeevtFshGGyd5LZO0QQGxzG1H63Gky2GRoh8bTQbd2tQcfQzANdnPkBAQS j2aOiSsiUQeNZqfZAfEBwRd27GXRYlKb/MpgCZKUH+ZO9VG6QaD3VGvg17/Caghy nVdbBQ81ZV9tkz9EMN0vt2VJHmEqARh88w619laHjg+ioPTG4/UIDPzskt1I+Fgm Y6NQLeFyfaO3RKKDYWGPcY7fmWQI9V8MECHOvyVI4xJcgqAbqnfsgytjuiFbrfRo fTvpuB7kvltBZ180QSB79xj0sWGFTWR02MeWy3uOaLZz2eIm2ZTZbMUSgNYR0ldG L3y7CEkTkoVF1ijYgAfuMgptk3Yf0dpa66D9HUo947wWkNrW5ds= =4fTk -----END PGP SIGNATURE----- Merge tag 'riscv-for-linus-7.0-mw1' of git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux Pull RISC-V updates from Paul Walmsley: - Add support for control flow integrity for userspace processes. This is based on the standard RISC-V ISA extensions Zicfiss and Zicfilp - Improve ptrace behavior regarding vector registers, and add some selftests - Optimize our strlen() assembly - Enable the ISO-8859-1 code page as built-in, similar to ARM64, for EFI volume mounting - Clean up some code slightly, including defining copy_user_page() as copy_page() rather than memcpy(), aligning us with other architectures; and using max3() to slightly simplify an expression in riscv_iommu_init_check() * tag 'riscv-for-linus-7.0-mw1' of git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux: (42 commits) riscv: lib: optimize strlen loop efficiency selftests: riscv: vstate_exec_nolibc: Use the regular prctl() function selftests: riscv: verify ptrace accepts valid vector csr values selftests: riscv: verify ptrace rejects invalid vector csr inputs selftests: riscv: verify syscalls discard vector context selftests: riscv: verify initial vector state with ptrace selftests: riscv: test ptrace vector interface riscv: ptrace: validate input vector csr registers riscv: csr: define vtype register elements riscv: vector: init vector context with proper vlenb riscv: ptrace: return ENODATA for inactive vector extension kselftest/riscv: add kselftest for user mode CFI riscv: add documentation for shadow stack riscv: add documentation for landing pad / indirect branch tracking riscv: create a Kconfig fragment for shadow stack and landing pad support arch/riscv: add dual vdso creation logic and select vdso based on hw arch/riscv: compile vdso with landing pad and shadow stack note riscv: enable kernel access to shadow stack memory via the FWFT SBI call riscv: add kernel command line option to opt out of user CFI riscv/hwprobe: add zicfilp / zicfiss enumeration in hwprobe ... |
||
|---|---|---|
| .. | ||
| vdso | ||
| vendor_extensions | ||
| Kbuild | ||
| acenv.h | ||
| acpi.h | ||
| alternative-macros.h | ||
| alternative.h | ||
| arch_hweight.h | ||
| archrandom.h | ||
| asm-extable.h | ||
| asm-offsets.h | ||
| asm-prototypes.h | ||
| asm.h | ||
| assembler.h | ||
| atomic.h | ||
| barrier.h | ||
| bitops.h | ||
| bug.h | ||
| bugs.h | ||
| cache.h | ||
| cacheflush.h | ||
| cacheinfo.h | ||
| cfi.h | ||
| checksum.h | ||
| clint.h | ||
| clocksource.h | ||
| cmpxchg.h | ||
| compat.h | ||
| cpu.h | ||
| cpu_ops.h | ||
| cpu_ops_sbi.h | ||
| cpufeature-macros.h | ||
| cpufeature.h | ||
| cpuidle.h | ||
| crash_reserve.h | ||
| csr.h | ||
| current.h | ||
| delay.h | ||
| dma-noncoherent.h | ||
| dmi.h | ||
| efi.h | ||
| elf.h | ||
| entry-common.h | ||
| errata_list.h | ||
| errata_list_vendors.h | ||
| exec.h | ||
| extable.h | ||
| fence.h | ||
| fixmap.h | ||
| fpu.h | ||
| ftrace.h | ||
| futex.h | ||
| gdb_xml.h | ||
| gpr-num.h | ||
| hugetlb.h | ||
| hwcap.h | ||
| hwprobe.h | ||
| image.h | ||
| insn-def.h | ||
| insn.h | ||
| io.h | ||
| irq.h | ||
| irq_stack.h | ||
| irq_work.h | ||
| irqflags.h | ||
| jump_label.h | ||
| kasan.h | ||
| kdebug.h | ||
| kexec.h | ||
| kfence.h | ||
| kgdb.h | ||
| kprobes.h | ||
| kvm_aia.h | ||
| kvm_gstage.h | ||
| kvm_host.h | ||
| kvm_mmu.h | ||
| kvm_nacl.h | ||
| kvm_tlb.h | ||
| kvm_types.h | ||
| kvm_vcpu_fp.h | ||
| kvm_vcpu_insn.h | ||
| kvm_vcpu_pmu.h | ||
| kvm_vcpu_sbi.h | ||
| kvm_vcpu_sbi_fwft.h | ||
| kvm_vcpu_timer.h | ||
| kvm_vcpu_vector.h | ||
| kvm_vmid.h | ||
| linkage.h | ||
| membarrier.h | ||
| mman.h | ||
| mmio.h | ||
| mmiowb.h | ||
| mmu.h | ||
| mmu_context.h | ||
| module.h | ||
| module.lds.h | ||
| numa.h | ||
| page.h | ||
| paravirt.h | ||
| pci.h | ||
| perf_event.h | ||
| pgalloc.h | ||
| pgtable-32.h | ||
| pgtable-64.h | ||
| pgtable-bits.h | ||
| pgtable.h | ||
| probes.h | ||
| processor.h | ||
| ptrace.h | ||
| runtime-const.h | ||
| sbi.h | ||
| scs.h | ||
| seccomp.h | ||
| sections.h | ||
| semihost.h | ||
| set_memory.h | ||
| signal32.h | ||
| simd.h | ||
| smp.h | ||
| soc.h | ||
| sparsemem.h | ||
| spinlock.h | ||
| stackprotector.h | ||
| stacktrace.h | ||
| string.h | ||
| suspend.h | ||
| swab.h | ||
| switch_to.h | ||
| sync_core.h | ||
| syscall.h | ||
| syscall_table.h | ||
| syscall_wrapper.h | ||
| text-patching.h | ||
| thread_info.h | ||
| timex.h | ||
| tlb.h | ||
| tlbbatch.h | ||
| tlbflush.h | ||
| topology.h | ||
| trace.h | ||
| uaccess.h | ||
| unistd.h | ||
| uprobes.h | ||
| usercfi.h | ||
| vdso.h | ||
| vector.h | ||
| vendor_extensions.h | ||
| vendorid_list.h | ||
| vermagic.h | ||
| vmalloc.h | ||
| word-at-a-time.h | ||
| xip_fixup.h | ||
| xor.h | ||