mirror of
https://github.com/edk2-porting/linux-next.git
synced 2024-11-20 08:38:24 +08:00
sparc_brk() is not needed anymore
the checks it's doing are duplicated in sys_brk() and failing them early makes no sense, AFAICT. Acked-by: David S. Miller <davem@davemloft.net> Acked-by: Hugh Dickins <hugh.dickins@tiscali.co.uk> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
This commit is contained in:
parent
2c6a10161d
commit
05d72faa6d
@ -79,15 +79,6 @@ unsigned long arch_get_unmapped_area(struct file *filp, unsigned long addr, unsi
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
asmlinkage unsigned long sparc_brk(unsigned long brk)
|
|
||||||
{
|
|
||||||
if(ARCH_SUN4C) {
|
|
||||||
if ((brk & 0xe0000000) != (current->mm->brk & 0xe0000000))
|
|
||||||
return current->mm->brk;
|
|
||||||
}
|
|
||||||
return sys_brk(brk);
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* sys_pipe() is the normal C calling standard for creating
|
* sys_pipe() is the normal C calling standard for creating
|
||||||
* a pipe. It's not the way unix traditionally does this, though.
|
* a pipe. It's not the way unix traditionally does this, though.
|
||||||
|
@ -403,18 +403,6 @@ void arch_pick_mmap_layout(struct mm_struct *mm)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
SYSCALL_DEFINE1(sparc_brk, unsigned long, brk)
|
|
||||||
{
|
|
||||||
/* People could try to be nasty and use ta 0x6d in 32bit programs */
|
|
||||||
if (test_thread_flag(TIF_32BIT) && brk >= STACK_TOP32)
|
|
||||||
return current->mm->brk;
|
|
||||||
|
|
||||||
if (unlikely(straddles_64bit_va_hole(current->mm->brk, brk)))
|
|
||||||
return current->mm->brk;
|
|
||||||
|
|
||||||
return sys_brk(brk);
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* sys_pipe() is the normal C calling standard for creating
|
* sys_pipe() is the normal C calling standard for creating
|
||||||
* a pipe. It's not the way unix traditionally does this, though.
|
* a pipe. It's not the way unix traditionally does this, though.
|
||||||
|
@ -9,7 +9,6 @@
|
|||||||
struct new_utsname;
|
struct new_utsname;
|
||||||
|
|
||||||
extern asmlinkage unsigned long sys_getpagesize(void);
|
extern asmlinkage unsigned long sys_getpagesize(void);
|
||||||
extern asmlinkage unsigned long sparc_brk(unsigned long brk);
|
|
||||||
extern asmlinkage long sparc_pipe(struct pt_regs *regs);
|
extern asmlinkage long sparc_pipe(struct pt_regs *regs);
|
||||||
extern asmlinkage long sys_ipc(unsigned int call, int first,
|
extern asmlinkage long sys_ipc(unsigned int call, int first,
|
||||||
unsigned long second,
|
unsigned long second,
|
||||||
|
@ -19,7 +19,7 @@ sys_call_table:
|
|||||||
/*0*/ .long sys_restart_syscall, sys_exit, sys_fork, sys_read, sys_write
|
/*0*/ .long sys_restart_syscall, sys_exit, sys_fork, sys_read, sys_write
|
||||||
/*5*/ .long sys_open, sys_close, sys_wait4, sys_creat, sys_link
|
/*5*/ .long sys_open, sys_close, sys_wait4, sys_creat, sys_link
|
||||||
/*10*/ .long sys_unlink, sunos_execv, sys_chdir, sys_chown16, sys_mknod
|
/*10*/ .long sys_unlink, sunos_execv, sys_chdir, sys_chown16, sys_mknod
|
||||||
/*15*/ .long sys_chmod, sys_lchown16, sparc_brk, sys_nis_syscall, sys_lseek
|
/*15*/ .long sys_chmod, sys_lchown16, sys_brk, sys_nis_syscall, sys_lseek
|
||||||
/*20*/ .long sys_getpid, sys_capget, sys_capset, sys_setuid16, sys_getuid16
|
/*20*/ .long sys_getpid, sys_capget, sys_capset, sys_setuid16, sys_getuid16
|
||||||
/*25*/ .long sys_vmsplice, sys_ptrace, sys_alarm, sys_sigaltstack, sys_pause
|
/*25*/ .long sys_vmsplice, sys_ptrace, sys_alarm, sys_sigaltstack, sys_pause
|
||||||
/*30*/ .long sys_utime, sys_lchown, sys_fchown, sys_access, sys_nice
|
/*30*/ .long sys_utime, sys_lchown, sys_fchown, sys_access, sys_nice
|
||||||
|
@ -21,7 +21,7 @@ sys_call_table32:
|
|||||||
/*0*/ .word sys_restart_syscall, sys32_exit, sys_fork, sys_read, sys_write
|
/*0*/ .word sys_restart_syscall, sys32_exit, sys_fork, sys_read, sys_write
|
||||||
/*5*/ .word sys32_open, sys_close, sys32_wait4, sys32_creat, sys_link
|
/*5*/ .word sys32_open, sys_close, sys32_wait4, sys32_creat, sys_link
|
||||||
/*10*/ .word sys_unlink, sunos_execv, sys_chdir, sys_chown16, sys32_mknod
|
/*10*/ .word sys_unlink, sunos_execv, sys_chdir, sys_chown16, sys32_mknod
|
||||||
/*15*/ .word sys_chmod, sys_lchown16, sys_sparc_brk, sys32_perfctr, sys32_lseek
|
/*15*/ .word sys_chmod, sys_lchown16, sys_brk, sys32_perfctr, sys32_lseek
|
||||||
/*20*/ .word sys_getpid, sys_capget, sys_capset, sys_setuid16, sys_getuid16
|
/*20*/ .word sys_getpid, sys_capget, sys_capset, sys_setuid16, sys_getuid16
|
||||||
/*25*/ .word sys32_vmsplice, compat_sys_ptrace, sys_alarm, sys32_sigaltstack, sys_pause
|
/*25*/ .word sys32_vmsplice, compat_sys_ptrace, sys_alarm, sys32_sigaltstack, sys_pause
|
||||||
/*30*/ .word compat_sys_utime, sys_lchown, sys_fchown, sys32_access, sys32_nice
|
/*30*/ .word compat_sys_utime, sys_lchown, sys_fchown, sys32_access, sys32_nice
|
||||||
@ -96,7 +96,7 @@ sys_call_table:
|
|||||||
/*0*/ .word sys_restart_syscall, sparc_exit, sys_fork, sys_read, sys_write
|
/*0*/ .word sys_restart_syscall, sparc_exit, sys_fork, sys_read, sys_write
|
||||||
/*5*/ .word sys_open, sys_close, sys_wait4, sys_creat, sys_link
|
/*5*/ .word sys_open, sys_close, sys_wait4, sys_creat, sys_link
|
||||||
/*10*/ .word sys_unlink, sys_nis_syscall, sys_chdir, sys_chown, sys_mknod
|
/*10*/ .word sys_unlink, sys_nis_syscall, sys_chdir, sys_chown, sys_mknod
|
||||||
/*15*/ .word sys_chmod, sys_lchown, sys_sparc_brk, sys_perfctr, sys_lseek
|
/*15*/ .word sys_chmod, sys_lchown, sys_brk, sys_perfctr, sys_lseek
|
||||||
/*20*/ .word sys_getpid, sys_capget, sys_capset, sys_setuid, sys_getuid
|
/*20*/ .word sys_getpid, sys_capget, sys_capset, sys_setuid, sys_getuid
|
||||||
/*25*/ .word sys_vmsplice, sys_ptrace, sys_alarm, sys_sigaltstack, sys_nis_syscall
|
/*25*/ .word sys_vmsplice, sys_ptrace, sys_alarm, sys_sigaltstack, sys_nis_syscall
|
||||||
/*30*/ .word sys_utime, sys_nis_syscall, sys_nis_syscall, sys_access, sys_nice
|
/*30*/ .word sys_utime, sys_nis_syscall, sys_nis_syscall, sys_access, sys_nice
|
||||||
|
Loading…
Reference in New Issue
Block a user