Re: [PATCH 6/8] Use __kernel_ulong_t in x86 struct semid64_ds
On 01/22/2014 06:57 AM, Catalin Marinas wrote: > > 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). > That's mostly where we started out, too. -hpa -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH 6/8] Use __kernel_ulong_t in x86 struct semid64_ds
On Tue, Jan 21, 2014 at 06:06:11PM +, H.J. Lu wrote: > On Tue, Jan 21, 2014 at 9:10 AM, Catalin Marinas > wrote: > > On Fri, Dec 27, 2013 at 05:25:10PM +, 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 > >> --- > >> 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 majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH 6/8] Use __kernel_ulong_t in x86 struct semid64_ds
On Tue, Jan 21, 2014 at 9:10 AM, Catalin Marinas wrote: > On Fri, Dec 27, 2013 at 05:25:10PM +, 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 >> --- >> 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. I am enclosing a program to check kernel uabi header files against glibc header files. You can try it on ILP32 ARM64. -- H.J. uapi-header-check.tar.xz Description: application/xz
Re: [PATCH 6/8] Use __kernel_ulong_t in x86 struct semid64_ds
On Fri, Dec 27, 2013 at 05:25:10PM +, 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 > --- > 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? -- Catalin -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[PATCH 6/8] Use __kernel_ulong_t in x86 struct semid64_ds
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 --- 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; }; #endif /* _ASM_X86_SEMBUF_H */ -- 1.8.4.2 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[PATCH 6/8] Use __kernel_ulong_t in x86 struct semid64_ds
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 --- 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; }; #endif /* _ASM_X86_SEMBUF_H */ -- 1.8.4.2 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/