From 74f31c18593111725478a991b395ae45661985a3 Mon Sep 17 00:00:00 2001 From: Richard Henderson Date: Thu, 29 May 2014 11:57:39 -0400 Subject: [PATCH] aarch64: Fix error return from __ioctl Forgotten in ca3cfa40c16ef34c74951a07a57cfcbcd58898b1 where the error branch was moved from PSEUDO_RET. --- ChangeLog | 5 +++++ sysdeps/unix/sysv/linux/aarch64/ioctl.S | 13 +++++++------ 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/ChangeLog b/ChangeLog index 243271f04b..1d85abef6e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2014-05-30 Richard Henderson + + * sysdeps/unix/sysv/linux/aarch64/ioctl.S (__ioctl): Remove the + use of PSEUDO_RET; perform the error check directly. + 2014-05-30 Marko Myllynen * sysdeps/x86_64/link-defines.sym (BND_SIZE): Replace __int128 diff --git a/sysdeps/unix/sysv/linux/aarch64/ioctl.S b/sysdeps/unix/sysv/linux/aarch64/ioctl.S index 4443f5a4aa..8920a202a1 100644 --- a/sysdeps/unix/sysv/linux/aarch64/ioctl.S +++ b/sysdeps/unix/sysv/linux/aarch64/ioctl.S @@ -20,11 +20,12 @@ .text ENTRY(__ioctl) - movz x8, #__NR_ioctl - sxtw x0, w0 - svc #0x0 - cmn x0, #0x1, lsl #12 - PSEUDO_RET - PSEUDO_END (__ioctl) + mov x8, #__NR_ioctl + sxtw x0, w0 + svc #0x0 + cmn x0, #4095 + b.cs .Lsyscall_error + ret +PSEUDO_END (__ioctl) weak_alias (__ioctl, ioctl) -- 2.11.4.GIT