mirror of git://sourceware.org/git/glibc.git
[AArch64] Fix out of range branch from ioctl() and clone()
2013-05-12 Marcus Shawcroft <marcus.shawcroft@linaro.org> * sysdeps/unix/sysv/linux/aarch64/clone.S (__clone): Do not call sycall_error directly with a confitional branch. * sysdeps/unix/sysv/linux/aarch64/ioctl.S (__ioctl): Do not call sycall_error directly with a confitional branch.
This commit is contained in:
parent
601a3a5fd5
commit
d842b1440d
|
|
@ -1,3 +1,11 @@
|
||||||
|
2013-05-12 Marcus Shawcroft <marcus.shawcroft@linaro.org>
|
||||||
|
|
||||||
|
* sysdeps/unix/sysv/linux/aarch64/clone.S (__clone):
|
||||||
|
Do not call sycall_error directly with a confitional branch.
|
||||||
|
|
||||||
|
* sysdeps/unix/sysv/linux/aarch64/ioctl.S (__ioctl):
|
||||||
|
Do not call sycall_error directly with a confitional branch.
|
||||||
|
|
||||||
2013-03-19 Andreas Schwab <schwab@suse.de>
|
2013-03-19 Andreas Schwab <schwab@suse.de>
|
||||||
|
|
||||||
* sysdeps/unix/sysv/linux/aarch64/configure.in: Set
|
* sysdeps/unix/sysv/linux/aarch64/configure.in: Set
|
||||||
|
|
|
||||||
|
|
@ -65,9 +65,10 @@ ENTRY(__clone)
|
||||||
svc 0x0
|
svc 0x0
|
||||||
cmp x0, #0
|
cmp x0, #0
|
||||||
beq 2f
|
beq 2f
|
||||||
blt C_SYMBOL_NAME(__syscall_error)
|
blt 3f
|
||||||
RET
|
RET
|
||||||
1: mov x0, #-EINVAL
|
1: mov x0, #-EINVAL
|
||||||
|
3:
|
||||||
b syscall_error
|
b syscall_error
|
||||||
|
|
||||||
2:
|
2:
|
||||||
|
|
|
||||||
|
|
@ -24,9 +24,7 @@ ENTRY(__ioctl)
|
||||||
sxtw x0, w0
|
sxtw x0, w0
|
||||||
svc #0x0
|
svc #0x0
|
||||||
cmn x0, #0x1, lsl #12
|
cmn x0, #0x1, lsl #12
|
||||||
b.hi C_SYMBOL_NAME(__syscall_error)
|
PSEUDO_RET
|
||||||
ret
|
|
||||||
|
|
||||||
PSEUDO_END (__ioctl)
|
PSEUDO_END (__ioctl)
|
||||||
|
|
||||||
weak_alias (__ioctl, ioctl)
|
weak_alias (__ioctl, ioctl)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue