RISC-V: Make __NR_riscv_flush_icache visible to userspace
authorPalmer Dabbelt <palmer@dabbelt.com>
Wed, 27 Dec 2017 03:11:22 +0000 (19:11 -0800)
committerPalmer Dabbelt <palmer@dabbelt.com>
Sun, 7 Jan 2018 23:14:37 +0000 (15:14 -0800)
commit9e49a4ed072ab67b17238c5a45d7cba7f848659e
tree16006725ba7697d6fa4fcecd0954e7e646b46216
parent33c57c0d3c67f51f491a9d27108f7e97adc03d96
RISC-V: Make __NR_riscv_flush_icache visible to userspace

We were hoping to avoid making this visible to userspace, but it looks
like we're going to have to because QEMU's user-mode emulation doesn't
want to emulate a vDSO.  Having vDSO-only system calls was a bit
unothodox anyway, so I think in this case it's OK to just make the
actual system call number public.

This patch simply moves the definition of __NR_riscv_flush_icache
availiable to userspace, which results in the deletion of the now empty
vdso-syscalls.h.

Changes since v1:

* I've moved the definition into uapi/asm/syscalls.h rathen than
  uapi/asm/unistd.h.  This allows me to keep asm/unistd.h, so we can
  keep the syscall table macros sane.
* As a side effect of the above, this no longer disables all system
  calls on RISC-V.  Whoops!

Signed-off-by: Palmer Dabbelt <palmer@sifive.com>
arch/riscv/include/asm/unistd.h
arch/riscv/include/asm/vdso-syscalls.h [deleted file]
arch/riscv/include/uapi/asm/syscalls.h [new file with mode: 0644]
arch/riscv/kernel/syscall_table.c
arch/riscv/kernel/vdso/flush_icache.S