From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:46525) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YkDQA-0004kX-LS for qemu-devel@nongnu.org; Mon, 20 Apr 2015 11:15:39 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YkDQ5-0006Be-Ua for qemu-devel@nongnu.org; Mon, 20 Apr 2015 11:15:38 -0400 Received: from mailapp01.imgtec.com ([195.59.15.196]:56036) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YkDQ5-0006BJ-P9 for qemu-devel@nongnu.org; Mon, 20 Apr 2015 11:15:33 -0400 From: Yongbok Kim Date: Mon, 20 Apr 2015 16:15:20 +0100 Message-ID: <1429542920-47029-1-git-send-email-yongbok.kim@imgtec.com> MIME-Version: 1.0 Content-Type: text/plain Subject: [Qemu-devel] [PATCH] linux-user: Use abi_ulong for TARGET_ELF_PAGESTART List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: peter.maydell@linaro.org, riku.voipio@iki.fi TARGET_ELF_PAGESTART is required to use abi_ulong to correctly handle addresses for different target bits width. This patch fixes a problem when running a 64-bit user mode application on 32-bit host machines. Signed-off-by: Yongbok Kim Reviewed-by: Peter Maydell --- linux-user/elfload.c | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) diff --git a/linux-user/elfload.c b/linux-user/elfload.c index 399c021..edf0cf4 100644 --- a/linux-user/elfload.c +++ b/linux-user/elfload.c @@ -1227,7 +1227,8 @@ struct exec /* Necessary parameters */ #define TARGET_ELF_EXEC_PAGESIZE TARGET_PAGE_SIZE -#define TARGET_ELF_PAGESTART(_v) ((_v) & ~(unsigned long)(TARGET_ELF_EXEC_PAGESIZE-1)) +#define TARGET_ELF_PAGESTART(_v) ((_v) & \ + ~(abi_ulong)(TARGET_ELF_EXEC_PAGESIZE-1)) #define TARGET_ELF_PAGEOFFSET(_v) ((_v) & (TARGET_ELF_EXEC_PAGESIZE-1)) #define DLINFO_ITEMS 14 -- 1.7.5.4