Received: from eggs.gnu.org ([2001:4830:134:3::10]:49296) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YFAVw-0004r9-2y for qemu-devel@nongnu.org; Sat, 24 Jan 2015 18:53:17 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YFAVr-0003cj-3L for qemu-devel@nongnu.org; Sat, 24 Jan 2015 18:53:16 -0500 Message-ID: <54C4322A.3060704@sunrus.com.cn> Date: Sun, 25 Jan 2015 08:00:42 +0800 From: Chen Gang S MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Subject: [Qemu-devel] [PATCH v2] linux-user/syscall.c: Need call unlock_user() before go to failure return in default case List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Peter Maydell , Riku Voipio Cc: QEMU Trivial , qemu-devel In abi_long do_ioctl_dm(), after calls lock_user(), it does not call unlock_user() before go to failure return in default case. Signed-off-by: Chen Gang --- linux-user/syscall.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/linux-user/syscall.c b/linux-user/syscall.c index a427f7a..ec9e4fc 100644 --- a/linux-user/syscall.c +++ b/linux-user/syscall.c @@ -3566,6 +3566,7 @@ static abi_long do_ioctl_dm(const IOCTLEntry *ie, uint8_t *buf_temp, int fd, } default: ret = -TARGET_EINVAL; + unlock_user(argptr, guest_data, 0); goto out; } unlock_user(argptr, guest_data, 0); @@ -3685,6 +3686,7 @@ static abi_long do_ioctl_dm(const IOCTLEntry *ie, uint8_t *buf_temp, int fd, break; } default: + unlock_user(argptr, guest_data, 0); ret = -TARGET_EINVAL; goto out; } -- 1.9.3