Merge branch 'misc.compat' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs

Pull alpha syscall cleanups from Al Viro:
 "A couple of SYSCALL_DEFINE conversions and removal of pointless (and
  bitrotted) piece stuck in ret_from_kernel_thread since the
  kernel_exceve/kernel_thread conversions six years ago"

* 'misc.compat' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
  alpha: get rid of pointless insn in ret_from_kernel_thread
  alpha: switch pci syscalls to SYSCALL_DEFINE
This commit is contained in:
Linus Torvalds 2018-04-07 14:38:01 -07:00
commit bf6879dcc4
3 changed files with 10 additions and 11 deletions

View File

@ -785,7 +785,6 @@ ret_from_kernel_thread:
mov $9, $27 mov $9, $27
mov $10, $16 mov $10, $16
jsr $26, ($9) jsr $26, ($9)
mov $31, $19 /* to disable syscall restarts */
br $31, ret_to_user br $31, ret_to_user
.end ret_from_kernel_thread .end ret_from_kernel_thread

View File

@ -15,6 +15,7 @@
#include <linux/sched.h> #include <linux/sched.h>
#include <linux/dma-mapping.h> #include <linux/dma-mapping.h>
#include <linux/scatterlist.h> #include <linux/scatterlist.h>
#include <linux/syscalls.h>
#include "proto.h" #include "proto.h"
@ -46,8 +47,8 @@ alloc_resource(void)
return alloc_bootmem(sizeof(struct resource)); return alloc_bootmem(sizeof(struct resource));
} }
asmlinkage long SYSCALL_DEFINE3(pciconfig_iobase, long, which, unsigned long, bus,
sys_pciconfig_iobase(long which, unsigned long bus, unsigned long dfn) unsigned long, dfn)
{ {
struct pci_controller *hose; struct pci_controller *hose;
@ -84,9 +85,8 @@ sys_pciconfig_iobase(long which, unsigned long bus, unsigned long dfn)
return -EOPNOTSUPP; return -EOPNOTSUPP;
} }
asmlinkage long SYSCALL_DEFINE5(pciconfig_read, unsigned long, bus, unsigned long, dfn,
sys_pciconfig_read(unsigned long bus, unsigned long dfn, unsigned long, off, unsigned long, len, void __user *, buf)
unsigned long off, unsigned long len, void *buf)
{ {
if (!capable(CAP_SYS_ADMIN)) if (!capable(CAP_SYS_ADMIN))
return -EPERM; return -EPERM;
@ -94,9 +94,8 @@ sys_pciconfig_read(unsigned long bus, unsigned long dfn,
return -ENODEV; return -ENODEV;
} }
asmlinkage long SYSCALL_DEFINE5(pciconfig_write, unsigned long, bus, unsigned long, dfn,
sys_pciconfig_write(unsigned long bus, unsigned long dfn, unsigned long, off, unsigned long, len, void __user *, buf)
unsigned long off, unsigned long len, void *buf)
{ {
if (!capable(CAP_SYS_ADMIN)) if (!capable(CAP_SYS_ADMIN))
return -EPERM; return -EPERM;

View File

@ -22,6 +22,7 @@
#include <linux/module.h> #include <linux/module.h>
#include <linux/cache.h> #include <linux/cache.h>
#include <linux/slab.h> #include <linux/slab.h>
#include <linux/syscalls.h>
#include <asm/machvec.h> #include <asm/machvec.h>
#include "proto.h" #include "proto.h"
@ -409,8 +410,8 @@ alloc_resource(void)
/* Provide information on locations of various I/O regions in physical /* Provide information on locations of various I/O regions in physical
memory. Do this on a per-card basis so that we choose the right hose. */ memory. Do this on a per-card basis so that we choose the right hose. */
asmlinkage long SYSCALL_DEFINE3(pciconfig_iobase, long, which, unsigned long, bus,
sys_pciconfig_iobase(long which, unsigned long bus, unsigned long dfn) unsigned long, dfn)
{ {
struct pci_controller *hose; struct pci_controller *hose;
struct pci_dev *dev; struct pci_dev *dev;