Re: [PATCH 6/8] Use __kernel_ulong_t in x86 struct semid64_ds

From: Catalin Marinas
Date: Wed Jan 22 2014 - 09:58:24 EST


On Tue, Jan 21, 2014 at 06:06:11PM +0000, H.J. Lu wrote:
> On Tue, Jan 21, 2014 at 9:10 AM, Catalin Marinas
> <catalin.marinas@xxxxxxx> wrote:
> > On Fri, Dec 27, 2013 at 05:25:10PM +0000, H.J. Lu wrote:
> >> Both x32 and x86-64 use the same struct semid64_ds for system calls.
> >> But x32 long is 32-bit. This patch replaces unsigned long with
> >> __kernel_ulong_t in x86 struct semid64_ds.
> >>
> >> Signed-off-by: H.J. Lu <hjl.tools@xxxxxxxxx>
> >> ---
> >> arch/x86/include/uapi/asm/sembuf.h | 10 +++++-----
> >> 1 file changed, 5 insertions(+), 5 deletions(-)
> >>
> >> diff --git a/arch/x86/include/uapi/asm/sembuf.h b/arch/x86/include/uapi/asm/sembuf.h
> >> index ee50c80..cc2d6a3 100644
> >> --- a/arch/x86/include/uapi/asm/sembuf.h
> >> +++ b/arch/x86/include/uapi/asm/sembuf.h
> >> @@ -13,12 +13,12 @@
> >> struct semid64_ds {
> >> struct ipc64_perm sem_perm; /* permissions .. see ipc.h */
> >> __kernel_time_t sem_otime; /* last semop time */
> >> - unsigned long __unused1;
> >> + __kernel_ulong_t __unused1;
> >> __kernel_time_t sem_ctime; /* last change time */
> >> - unsigned long __unused2;
> >> - unsigned long sem_nsems; /* no. of semaphores in array */
> >> - unsigned long __unused3;
> >> - unsigned long __unused4;
> >> + __kernel_ulong_t __unused2;
> >> + __kernel_ulong_t sem_nsems; /* no. of semaphores in array */
> >> + __kernel_ulong_t __unused3;
> >> + __kernel_ulong_t __unused4;
> >> };
> >
> > Since you are at this, could you please change the
> > include/uapi/asm-generic/sembuf.h structure as well?
>
> I could, but my build doesn't use that header file. I prefer not to
> change something I can't test.

OK, it makes sense.

> I am enclosing a program to check kernel uabi header files
> against glibc header files. You can try it on ILP32 ARM64.

Thanks, very useful. We'll give it a try when we get there. So far I
NAK'ed the first set of arm64 ILP32 patches as they were mostly using
the compat ABI (https://lkml.org/lkml/2013/9/9/502).

--
Catalin
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/