From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755197Ab3L0WRn (ORCPT ); Fri, 27 Dec 2013 17:17:43 -0500 Received: from mail-qa0-f50.google.com ([209.85.216.50]:55358 "EHLO mail-qa0-f50.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754828Ab3L0WOc (ORCPT ); Fri, 27 Dec 2013 17:14:32 -0500 From: "H.J. Lu" To: "H. Peter Anvin" , LKML Cc: "H.J. Lu" Subject: [PATCH 0/8] Update kernel uabi header files for x32 Date: Fri, 27 Dec 2013 14:14:16 -0800 Message-Id: <1388182464-28428-1-git-send-email-hjl.tools@gmail.com> X-Mailer: git-send-email 1.8.4.2 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X32 uses the same kernel system call interface as x86-64 for many system calls. However, "long" is 64-bit for x86-64 and is 32-bit for x32. Where long or unsigned long are used in struct types for such system calls, they are wrong for x32. __kernel_[u]long_t is [unsigned] long for all ABIs other than x32. I am submitting 8 patches to replace long or unsigned long with __kernel_[u]long_t so that those struct types can be used with x32 system calls. H.J. Lu (8): Use __kernel_long_t in struct timex Use __kernel_long_t/__kernel_ulong_t in Use __kernel_ulong_t in uapi struct ipc64_perm Use __kernel_long_t in struct msgbuf Use __kernel_ulong_t in struct msqid64_ds Use __kernel_ulong_t in x86 struct semid64_ds Use __kernel_ulong_t in shmid64_ds/shminfo64/shm_info Use __kernel_long_t in struct mq_attr arch/x86/include/uapi/asm/sembuf.h | 10 ++++----- include/uapi/asm-generic/ipcbuf.h | 5 +++++ include/uapi/asm-generic/msgbuf.h | 19 +++++++++++----- include/uapi/asm-generic/shmbuf.h | 36 +++++++++++++++++++++-------- include/uapi/linux/mqueue.h | 18 ++++++++++----- include/uapi/linux/msg.h | 8 +++++-- include/uapi/linux/resource.h | 26 +++++++++++++++++++-- include/uapi/linux/shm.h | 14 +++++++++--- include/uapi/linux/timex.h | 46 +++++++++++++++++++++++++++++++------- 9 files changed, 143 insertions(+), 39 deletions(-) -- 1.8.4.2