mirror of
https://github.com/Fishwaldo/linux-bl808.git
synced 2025-06-17 20:25:19 +00:00
RISC-V Patches for the 5.19 Merge Window, Part 1
* Support for the Svpbmt extension, which allows memory attributes to be encoded in pages. * Support for the Allwinner D1's implementation of page-based memory attributes. * Support for running rv32 binaries on rv64 systems, via the compat subsystem. * Support for kexec_file(). * Support for the new generic ticket-based spinlocks, which allows us to also move to qrwlock. These should have already gone in through the asm-geneic tree as well. * A handful of cleanups and fixes, include some larger ones around atomics and XIP. -----BEGIN PGP SIGNATURE----- iQJHBAABCAAxFiEEKzw3R0RoQ7JKlDp6LhMZ81+7GIkFAmKWOx8THHBhbG1lckBk YWJiZWx0LmNvbQAKCRAuExnzX7sYieAiEADAUdP7ctoaSQwk5skd/fdA3b4KJuKn 1Zjl+Br32WP0DlbirYBYWRUQZnCCsvABbTiwSJMcG7NBpU5pyQ5XDtB3OA5kJswO Fdp8Nd53//+GK1M5zdEM9OdgvT9fbfTZ3qTu8bKsROOQhGwnYL+Csc9KjFRqEmzN oQii0jlb3n5PM4FL3GsbV4uMn9zzkP9mnVAPQktcock2EKFEK/Fy3uNYMQiO2KPi n8O6bIDaeRdQ6SurzWOuOkt0cro0tEF85ilzT04mynQsOU0el5oGqCxnOhNH3VWg ndqPT6Yafw12hZOtbKJeP+nF8IIR6aJLP3jOtRwEVgcfbXYAw4QwbAV8kQZISefN ipn8JGY7GX9Y9TYU692OUGkcmAb3/dxb6c0WihBdvJ0M6YyLD5X+YKHNuG2onLgK ss43C5Mxsu629rsjdu/PV91B1+pve3rG9siVmF+g4eo0x9rjMq6/JB0Kal/8SLI1 Je5T55d5ujV1a2XxhZLQOSD5owrK7J1M9owb0bloTnr9nVwFTWDrfEQEU82o3kP+ Xm+FfXktnz9ai55NjkMbbEur5D++dKJhBavwCTnBcTrJmMtEH0R45GTK9ZehP+WC rNVrRXjIsS18wsTfJxnkZeFQA38as6VBKTzvwHvOgzTrrZU1/xk3lpkouYtAO6BG gKacHshVilmUuA== =Loi6 -----END PGP SIGNATURE----- Merge tag 'riscv-for-linus-5.19-mw0' of git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux Pull RISC-V updates from Palmer Dabbelt: - Support for the Svpbmt extension, which allows memory attributes to be encoded in pages - Support for the Allwinner D1's implementation of page-based memory attributes - Support for running rv32 binaries on rv64 systems, via the compat subsystem - Support for kexec_file() - Support for the new generic ticket-based spinlocks, which allows us to also move to qrwlock. These should have already gone in through the asm-geneic tree as well - A handful of cleanups and fixes, include some larger ones around atomics and XIP * tag 'riscv-for-linus-5.19-mw0' of git://git.kernel.org/pub/scm/linux/kernel/git/riscv/linux: (51 commits) RISC-V: Prepare dropping week attribute from arch_kexec_apply_relocations[_add] riscv: compat: Using seperated vdso_maps for compat_vdso_info RISC-V: Fix the XIP build RISC-V: Split out the XIP fixups into their own file RISC-V: ignore xipImage RISC-V: Avoid empty create_*_mapping definitions riscv: Don't output a bogus mmu-type on a no MMU kernel riscv: atomic: Add custom conditional atomic operation implementation riscv: atomic: Optimize dec_if_positive functions riscv: atomic: Cleanup unnecessary definition RISC-V: Load purgatory in kexec_file RISC-V: Add purgatory RISC-V: Support for kexec_file on panic RISC-V: Add kexec_file support RISC-V: use memcpy for kexec_file mode kexec_file: Fix kexec_file.c build error for riscv platform riscv: compat: Add COMPAT Kbuild skeletal support riscv: compat: ptrace: Add compat_arch_ptrace implement riscv: compat: signal: Add rt_frame implementation riscv: add memory-type errata for T-Head ...
This commit is contained in:
commit
35b51afd23
112 changed files with 2788 additions and 790 deletions
|
@ -259,6 +259,37 @@ struct compat_rlimit {
|
|||
compat_ulong_t rlim_max;
|
||||
};
|
||||
|
||||
#ifdef __ARCH_NEED_COMPAT_FLOCK64_PACKED
|
||||
#define __ARCH_COMPAT_FLOCK64_PACK __attribute__((packed))
|
||||
#else
|
||||
#define __ARCH_COMPAT_FLOCK64_PACK
|
||||
#endif
|
||||
|
||||
struct compat_flock {
|
||||
short l_type;
|
||||
short l_whence;
|
||||
compat_off_t l_start;
|
||||
compat_off_t l_len;
|
||||
#ifdef __ARCH_COMPAT_FLOCK_EXTRA_SYSID
|
||||
__ARCH_COMPAT_FLOCK_EXTRA_SYSID
|
||||
#endif
|
||||
compat_pid_t l_pid;
|
||||
#ifdef __ARCH_COMPAT_FLOCK_PAD
|
||||
__ARCH_COMPAT_FLOCK_PAD
|
||||
#endif
|
||||
};
|
||||
|
||||
struct compat_flock64 {
|
||||
short l_type;
|
||||
short l_whence;
|
||||
compat_loff_t l_start;
|
||||
compat_loff_t l_len;
|
||||
compat_pid_t l_pid;
|
||||
#ifdef __ARCH_COMPAT_FLOCK64_PAD
|
||||
__ARCH_COMPAT_FLOCK64_PAD
|
||||
#endif
|
||||
} __ARCH_COMPAT_FLOCK64_PACK;
|
||||
|
||||
struct compat_rusage {
|
||||
struct old_timeval32 ru_utime;
|
||||
struct old_timeval32 ru_stime;
|
||||
|
@ -896,6 +927,43 @@ asmlinkage long compat_sys_sigaction(int sig,
|
|||
/* obsolete: net/socket.c */
|
||||
asmlinkage long compat_sys_socketcall(int call, u32 __user *args);
|
||||
|
||||
#ifdef __ARCH_WANT_COMPAT_TRUNCATE64
|
||||
asmlinkage long compat_sys_truncate64(const char __user *pathname, compat_arg_u64(len));
|
||||
#endif
|
||||
|
||||
#ifdef __ARCH_WANT_COMPAT_FTRUNCATE64
|
||||
asmlinkage long compat_sys_ftruncate64(unsigned int fd, compat_arg_u64(len));
|
||||
#endif
|
||||
|
||||
#ifdef __ARCH_WANT_COMPAT_FALLOCATE
|
||||
asmlinkage long compat_sys_fallocate(int fd, int mode, compat_arg_u64(offset),
|
||||
compat_arg_u64(len));
|
||||
#endif
|
||||
|
||||
#ifdef __ARCH_WANT_COMPAT_PREAD64
|
||||
asmlinkage long compat_sys_pread64(unsigned int fd, char __user *buf, size_t count,
|
||||
compat_arg_u64(pos));
|
||||
#endif
|
||||
|
||||
#ifdef __ARCH_WANT_COMPAT_PWRITE64
|
||||
asmlinkage long compat_sys_pwrite64(unsigned int fd, const char __user *buf, size_t count,
|
||||
compat_arg_u64(pos));
|
||||
#endif
|
||||
|
||||
#ifdef __ARCH_WANT_COMPAT_SYNC_FILE_RANGE
|
||||
asmlinkage long compat_sys_sync_file_range(int fd, compat_arg_u64(pos),
|
||||
compat_arg_u64(nbytes), unsigned int flags);
|
||||
#endif
|
||||
|
||||
#ifdef __ARCH_WANT_COMPAT_FADVISE64_64
|
||||
asmlinkage long compat_sys_fadvise64_64(int fd, compat_arg_u64(pos),
|
||||
compat_arg_u64(len), int advice);
|
||||
#endif
|
||||
|
||||
#ifdef __ARCH_WANT_COMPAT_READAHEAD
|
||||
asmlinkage long compat_sys_readahead(int fd, compat_arg_u64(offset), size_t count);
|
||||
#endif
|
||||
|
||||
#endif /* CONFIG_ARCH_HAS_SYSCALL_WRAPPER */
|
||||
|
||||
/**
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue