Based on Andrew Pinski's patch-series.
Signed-off-by: Yury Norov
---
Documentation/arm64/ilp32.txt | 13 +
1 file changed, 13 insertions(+)
create mode 100644 Documentation/arm64/ilp32.txt
diff --git a/Documentation/arm64/ilp32.txt b/Documentation/arm64/ilp32.txt
new file
Here new aarch32 ptrace syscall handler is introsuced to avoid run-time
detection of the task type.
Signed-off-by: Yury Norov
---
arch/arm64/include/asm/unistd32.h | 2 +-
arch/arm64/kernel/ptrace.c| 50 ++-
arch/arm64/kernel/sys32.c | 1
The only difference is that non-compat version forces O_LARGEFILE,
and it should be the default behaviour for all architectures, as
we don't support 32-bit off_t. The only exception is tile32, that
continues with compat version of syscalls.
Signed-off-by: Yury Norov
Acked-by: Arnd Ber
Signed-off-by: Christoph Muellner
Signed-off-by: Yury Norov
Reviewed-by: David Daney
---
arch/arm64/include/uapi/asm/bitsperlong.h | 9 -
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/arch/arm64/include/uapi/asm/bitsperlong.h
b/arch/arm64/include/uapi/asm/bitsperlong.h
index
-bit off_t, and therefore want to limit the file size
to 4GB unless specified differently in the open flags.
Signed-off-by: Yury Norov
Acked-by: Thomas Gleixner (For the x86 part)
Acked-by: Arnd Bergmann
---
arch/Kconfig| 4
arch/arc/Kconfig| 1 +
arch/arm/Kconfig
From: Andrew Pinski
Signed-off-by: Andrew Pinski
Signed-off-by: Philipp Tomsich
Signed-off-by: Christoph Muellner
Signed-off-by: Yury Norov
Reviewed-by: David Daney
---
arch/arm64/include/asm/fpsimd.h | 2 +-
arch/arm64/include/asm/hwcap.h | 4 ++--
arch/arm64/include/asm
From: Bamvor Jian Zhang
With the patches of ILP32, COMPAT is not equivalent to AARCH32 in EL0.
This patch fix this by updating the dependency from COMPAT to
AARCH32_EL0 for ARMV8_DEPRECATED and ARM64_ERRATUM_845719.
Signed-off-by: Bamvor Jian Zhang
Signed-off-by: Yury Norov
---
arch/arm64
As generic unistd syscall table is written in C, syscall
prototypes declaration is needed. It's added to compat header.
Signed-off-by: Yury Norov
Acked-by: Heiko Carstens
---
include/linux/compat.h| 225 +
include/uapi/asm-generic/unistd.h
Some syscalls are declared conditionally, so corresponding wrappers
are conditional accordingly.
Signed-off-by: Yury Norov
Acked-by: Heiko Carstens
---
arch/s390/kernel/Makefile | 2 +-
arch/s390/kernel/compat_linux.c | 4 +
arch/s390/kernel/compat_wrapper.c | 129
After that, it will be possible to reuse it in ilp32.
Signed-off-by: Yury Norov
---
arch/arm64/include/asm/signal_common.h | 33
arch/arm64/kernel/signal.c | 91 +-
2 files changed, 90 insertions(+), 34 deletions(-)
create mode 100644
pages and spec.
Adjusted to move the move data page before code pages in sync with
commit 601255ae3c98fd3a8bb4696425e4f868b4f1
Signed-off-by: Philipp Tomsich
Signed-off-by: Christoph Muellner
Signed-off-by: Yury Norov
---
arch/arm64/include/asm/vdso.h | 6 ++
arch/arm64
From: Andrew Pinski
Add a separate syscall-table for ILP32, which dispatches either to native
LP64 system call implementation or to compat-syscalls, as appropriate.
Signed-off-by: Andrew Pinski
Signed-off-by: Yury Norov
---
arch/arm64/include/asm/unistd.h | 11 ++-
arch/arm64/kernel
Signed-off-by: Yury Norov
---
arch/arm64/include/asm/signal32_common.h | 25 +++
arch/arm64/kernel/Makefile | 1 +
arch/arm64/kernel/signal32.c | 85 ---
arch/arm64/kernel/signal32_common.c | 115 +++
4 files
accordingly.
Signed-off-by: Andrew Pinski
Signed-off-by: Philipp Tomsich
Signed-off-by: Christoph Muellner
Signed-off-by: Yury Norov
Reviewed-by: David Daney
---
arch/arm64/include/asm/elf.h | 13 +++--
arch/arm64/include/asm/is_compat.h | 28 +++-
arch
because has already
included. It was fixed too.
Signed-off-by: Yury Norov
Signed-off-by: Philipp Tomsich
Signed-off-by: Christoph Muellner
Signed-off-by: Andrew Pinski
Reviewed-by: David Daney
---
arch/arm64/include/asm/compat.h | 19 ++--
arch/arm64/include/asm/elf.h | 10
From: Andrew Pinski
This patch adds the config option for ILP32.
Signed-off-by: Andrew Pinski
Signed-off-by: Philipp Tomsich
Signed-off-by: Christoph Muellner
Signed-off-by: Yury Norov
Reviewed-by: David Daney
---
arch/arm64/Kconfig | 10 +-
1 file changed, 9 insertions(+), 1
From: Andrew Pinski
ILP32 uses AARCH32 compat structures and syscall handlers for signals.
But ILP32 struct rt_sigframe and ucontext differs from both LP64 and
AARCH32. So some specific mechanism is needed to take care of it.
Signed-off-by: Andrew Pinski
Signed-off-by: Yury Norov
---
arch
to handle ILP32 binaries
Signed-off-by: Yury Norov
---
arch/arm64/kernel/Makefile | 1 +
arch/arm64/kernel/binfmt_ilp32.c | 91
2 files changed, 92 insertions(+)
create mode 100644 arch/arm64/kernel/binfmt_ilp32.c
diff --git a/arch/arm64/kernel
There are about 20 failing tests of 782 in lite scenario.
float_bessel
float_exp_log
float_iperb
float_power
float_trigo
pipeio_1
pipeio_3
pipeio_5
pipeio_8
abort01
clone02
kill11
mmap16
open12
pause01
rename1
Hi Geert,
On Wed, Apr 06, 2016 at 08:51:50AM +0200, Geert Uytterhoeven wrote:
> Hi Yuri,
>
> On Wed, Apr 6, 2016 at 12:08 AM, Yury Norov wrote:
> > This version is rebased on kernel v4.6-rc2, and has fixes in signal
> > subsystem.
> > It works with updated glibc [
On Fri, Apr 22, 2016 at 06:10:09PM +0100, Catalin Marinas wrote:
> On Wed, Apr 06, 2016 at 01:08:41AM +0300, Yury Norov wrote:
> > Here new aarch32 ptrace syscall handler is introsuced to avoid run-time
> > detection of the task type.
>
> The reason for this patch isn't
On Fri, Apr 22, 2016 at 04:58:18PM +0100, Catalin Marinas wrote:
> On Wed, Apr 06, 2016 at 01:08:34AM +0300, Yury Norov wrote:
> > From: Bamvor Jian Zhang
> >
> > With the patches of ILP32, COMPAT is not equivalent to AARCH32 in EL0.
> > This patch fix this by updating
On Mon, Apr 25, 2016 at 06:26:56PM +0100, Catalin Marinas wrote:
> On Wed, Apr 06, 2016 at 01:08:42AM +0300, Yury Norov wrote:
> > --- a/arch/arm64/kernel/entry.S
> > +++ b/arch/arm64/kernel/entry.S
> > @@ -715,9 +715,13 @@ ENDPROC(ret_from_fork)
> > */
>
On Mon, Apr 25, 2016 at 09:19:13PM +0300, Yury Norov wrote:
> On Mon, Apr 25, 2016 at 06:26:56PM +0100, Catalin Marinas wrote:
> > On Wed, Apr 06, 2016 at 01:08:42AM +0300, Yury Norov wrote:
> > > --- a/arch/arm64/kernel/entry.S
> > > +++ b/arch/arm64/kernel/entr
Hi,
Checked for both v4.6-rc1 and current master (1993b17).
Config: arm64 defconfig
QEMU: QEMU emulator version 2.3.0 (Debian 1:2.3+dfsg-5ubuntu9.2)
Stacktrace:
#0 arch_counter_get_cntvct () at
./arch/arm64/include/asm/arch_timer.h:121
#1 __delay (cycles=1024) at arch/arm64/lib/delay.c:31
#2
On Wed, Mar 30, 2016 at 12:12:30AM +0200, Arnd Bergmann wrote:
> On Wednesday 30 March 2016 01:05:02 Yury Norov wrote:
> > Checked for both v4.6-rc1 and current master (1993b17).
> > Config: arm64 defconfig
> > QEMU: QEMU emulator version 2.3.0 (Debian 1:2.3+dfsg-5ubuntu9.2
On Wed, Mar 30, 2016 at 12:32:42AM +0200, Arnd Bergmann wrote:
> On Wednesday 30 March 2016 01:22:17 Yury Norov wrote:
> > >
> > > Undefined instruction in cpuinfo_store_boot_cpu() could be related
> > > to the SYS_ID_AA64MMFR2_EL1 access that was recently add
(Debian 1:2.3+dfsg-5ubuntu9.2)
that does not implement SYS_ID_AA64MMFR2_EL1 register. (Fixed in new
releases),
Discussion: https://lkml.org/lkml/2016/3/29/931
Signed-off-by: Yury Norov
---
arch/arm64/include/asm/cputype.h | 17 +++--
arch/arm64/include/asm/exttable.h | 21
Hi Mark,
On Thu, Mar 31, 2016 at 11:05:48AM +0100, Mark Rutland wrote:
> On Thu, Mar 31, 2016 at 05:27:03AM +0300, Yury Norov wrote:
> > Not all vendors implement all the system registers ARM specifies.
>
> The ID registers in question are precisely documented in the ARM ARM
>
On Thu, Mar 31, 2016 at 02:12:31PM +0100, Mark Rutland wrote:
> On Thu, Mar 31, 2016 at 03:28:59PM +0300, Yury Norov wrote:
> > Hi Mark,
> >
> > On Thu, Mar 31, 2016 at 11:05:48AM +0100, Mark Rutland wrote:
> > > On Thu, Mar 31, 2016 at 05:27:03AM +0300, Yury Norov
ffsets
> +ifeq ($(CONFIG_ARM64_ILP32),y)
> $(call objectify,$(arm64-obj-y)): $(obj)/vdso-ilp32/vdso-ilp32-offsets.h
> $(obj)/vdso-ilp32/vdso-ilp32-offsets.h: $(obj)/vdso-ilp32
> +endif
> --
> 1.8.4.5
>
> On 2016/4/6 6:08, Yury Norov wrote:
> >From: Philipp Tomsich
>
On Thu, Nov 05, 2015 at 09:39:51PM +0800, Andrew Pinski wrote:
> On Thu, Nov 5, 2015 at 7:36 PM, Andreas Schwab wrote:
> > Yury Norov writes:
> >
> >> v6:
> >> - time_t, __kenel_off_t and other types turned to be 32-bit
> >>for compatibility reas
2015-07-01 4:37 GMT+03:00 Pan Xinhui :
> hi, Yury
> thanks for your nice reply.
>
> On 2015年06月29日 21:39, Yury Norov wrote:
>>>
>>> Sometimes the input from user may cause an unexpected result.
>>
>>
>> Could you please provide specific exa
gt; On Monday 09 November 2015 14:23:59 Andreas Schwab wrote:
> >>>> Yury Norov writes:
> >>>>
> >>>>> This is what I run:
> >>>>> https://github.com/norov/glibc/tree/thunderx-ilp32-32time_toff_t
> >>>>
> >>>
On Mon, Nov 09, 2015 at 06:50:42PM +0300, Yury Norov wrote:
> On Mon, Nov 09, 2015 at 10:52:32PM +0800, pins...@gmail.com wrote:
> >
> >
> > > On Nov 9, 2015, at 10:36 PM, Arnd Bergmann wrote:
> > >
> > >> On Monday 09 November 2015 15:33:51 Andre
PAT_ELF_PLATFORM to report a a subplatform for
ILP32
Yury Norov (1):
aarch64: ilp32: msgrcv, msgsnd handlers
Documentation/arm64/ilp32.txt | 64 ++
arch/arm64/Kconfig | 14 +-
arch/arm64/Makefile|
From: Philipp Tomsich
Based on Andrew Pinski's original patch-series and adapted with changes
to reduce the duplication of code-paths and resolve issue found during
LTP testing.
Signed-off-by: Philipp Tomsich
Signed-off-by: Christoph Muellner
Signed-off-by: Yury Norov
create mode 1
ned-off-by: Christoph Muellner
Signed-off-by: Yury Norov
diff --git a/arch/arm64/Makefile b/arch/arm64/Makefile
index f9914d7..d7a13ce 100644
--- a/arch/arm64/Makefile
+++ b/arch/arm64/Makefile
@@ -15,7 +15,6 @@ CPPFLAGS_vmlinux.lds = -DTEXT_OFFSET=$(TEXT_OFFSET)
OBJCOPYFLAGS :=-O binary -
From: Andrew Pinski
Signed-off-by: Philipp Tomsich
Signed-off-by: Christoph Muellner
Signed-off-by: Yury Norov
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index 07d1811..d1dc605 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -679,6 +679,11 @@ menu "Userspace b
el and in glibc.
Signed-off-by: Philipp Tomsich
Signed-off-by: Christoph Muellner
Signed-off-by: Yury Norov
diff --git a/arch/arm64/include/asm/compat.h b/arch/arm64/include/asm/compat.h
index f53c4e6..4b717df 100644
--- a/arch/arm64/include/asm/compat.h
+++ b/arch/arm64/include/asm/compat.h
From: Andrew Pinski
This patch supports core dumping on ILP32.
We need a few extra macros (COMPAT_PR_REG_SIZE and COMPAT_PRSTATUS_SIZE) due
to size differences of the register sets.
Signed-off-by: Philipp Tomsich
Signed-off-by: Christoph Muellner
Signed-off-by: Yury Norov
diff --git a/arch
From: Andrew Pinski
Handle ILP32 (AArch64, but ELFCLASS32) binaries on ARM64.
Signed-off-by: Philipp Tomsich
Signed-off-by: Christoph Muellner
Signed-off-by: Yury Norov
diff --git a/arch/arm64/include/asm/elf.h b/arch/arm64/include/asm/elf.h
index d4d53c91a..9a854f9 100644
--- a/arch/arm64
0_svc-handler and simply
relies on the flags having been read by the kernel_entry macro.
Signed-off-by: Philipp Tomsich
Signed-off-by: Christoph Muellner
Signed-off-by: Yury Norov
create mode 100644 arch/arm64/kernel/sys_ilp32.c
diff --git a/arch/arm64/include/asm/unistd.h b/arch/arm64/includ
From: Andrew Pinski
Signed-off-by: Philipp Tomsich
Signed-off-by: Christoph Muellner
Signed-off-by: Yury Norov
diff --git a/arch/arm64/include/asm/hwcap.h b/arch/arm64/include/asm/hwcap.h
index 0ad7351..1e5361e 100644
--- a/arch/arm64/include/asm/hwcap.h
+++ b/arch/arm64/include/asm/hwcap.h
Signed-off-by: Yury Norov
diff --git a/arch/arm64/include/uapi/asm/bitsperlong.h
b/arch/arm64/include/uapi/asm/bitsperlong.h
index fce9c29..4265243 100644
--- a/arch/arm64/include/uapi/asm/bitsperlong.h
+++ b/arch/arm64/include/uapi/asm/bitsperlong.h
@@ -16,7 +16,14 @@
#ifndef
From: Andrew Pinski
In the ARM64 ILP32 case, we want to say the syscalls that normally would pass
64bit as two arguments are now passing as one so want to use the 64bit
naming scheme.
Signed-off-by: Philipp Tomsich
Signed-off-by: Christoph Muellner
Signed-off-by: Yury Norov
diff --git a
From: Andrew Pinski
This patch introduces is_a32_compat_task and is_a32_thread so it is
easier
to say this is a a32 specific thread or a generic compat thread/task.
Signed-off-by: Philipp Tomsich
Signed-off-by: Christoph Muellner
Signed-off-by: Yury Norov
diff --git a/arch/arm64/include/asm
From: Andrew Pinski
Signed-off-by: Philipp Tomsich
Signed-off-by: Christoph Muellner
Signed-off-by: Yury Norov
diff --git a/arch/arm64/include/asm/elf.h b/arch/arm64/include/asm/elf.h
index faad6df..f40c51b 100644
--- a/arch/arm64/include/asm/elf.h
+++ b/arch/arm64/include/asm/elf.h
From: Andrew Pinski
If we have both ILP32 and AARCH32 compiled in, we need use the non compat start
thread for ILP32.
Signed-off-by: Philipp Tomsich
Signed-off-by: Christoph Muellner
Signed-off-by: Yury Norov
diff --git a/arch/arm64/include/asm/processor.h
b/arch/arm64/include/asm
From: Andrew Pinski
Define __ARCH_WANT_64BIT_SYSCALLS for ILP32, so we (can) use the 64bit
syscall names for ILP32.
Signed-off-by: Philipp Tomsich
Signed-off-by: Christoph Muellner
Signed-off-by: Yury Norov
diff --git a/arch/arm64/include/uapi/asm/unistd.h
b/arch/arm64/include/uapi/asm
From: Andrew Pinski
Defines the macros which allow the signal structures to be the same between
ILP32 and LP64.
Signed-off-by: Philipp Tomsich
Signed-off-by: Christoph Muellner
Signed-off-by: Yury Norov
diff --git a/arch/arm64/include/uapi/asm/siginfo.h
b/arch/arm64/include/uapi/asm
From: Philipp Tomsich
To make life for tools (such as gdb) easier when dealing with ILP32 processes,
we report a proper subarchitecture for ILP32 in the ELF auxiliary vectors.
Signed-off-by: Philipp Tomsich
Signed-off-by: Christoph Muellner
Signed-off-by: Yury Norov
diff --git a/arch/arm64
are exposed as their
ILP32 'long long' and 'unsigned long long' equivalents to allow glibc
to correctly interpret most data-structures used in the kernel ABI
(i.el with the exception of those, that include pointers).
Signed-off-by: Philipp Tomsich
Signed-off-by: Christoph Mu
From: Andrew Pinski
Signed-off-by: Philipp Tomsich
Signed-off-by: Christoph Muellner
Signed-off-by: Yury Norov
diff --git a/arch/arm64/include/asm/compat.h b/arch/arm64/include/asm/compat.h
index 3a2976d..f53c4e6 100644
--- a/arch/arm64/include/asm/compat.h
+++ b/arch/arm64/include/asm
in the compat case as it was the
non-compat case.
Signed-off-by: Christoph Muellner
Signed-off-by: Philipp Tomsich
Signed-off-by: Yury Norov
diff --git a/include/linux/compat.h b/include/linux/compat.h
index a76c917..0a25d90 100644
--- a/include/linux/compat.h
+++ b/include/linux/compat.h
From: Andrew Pinski
This patch adds the config option for ILP32.
Signed-off-by: Philipp Tomsich
Signed-off-by: Christoph Muellner
Signed-off-by: Yury Norov
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index d1dc605..afbde9c 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
From: Philipp Tomsich
Adjusted to move the move data page before code pages in sync with
commit 601255ae3c98fd3a8bb4696425e4f868b4f1
Signed-off-by: Philipp Tomsich
Signed-off-by: Christoph Muellner
Signed-off-by: Yury Norov
create mode 100644 arch/arm64/kernel/vdso-ilp32/.gitignore
From: Andrew Pinski
Set COMPAT_USE_NATIVE_SIGINFO to be true for non AARCH32 tasks.
Signed-off-by: Philipp Tomsich
Signed-off-by: Christoph Muellner
Signed-off-by: Yury Norov
diff --git a/arch/arm64/include/asm/compat.h b/arch/arm64/include/asm/compat.h
index 4b717df..47f2b7a 100644
--- a
msgsnd and msgrcv syscall arguments are different in
lp64 and ilp32 ABIs. In this patch, ilp32-specific
handlers introduced to take it into account.
Signed-off-by: Yury Norov
diff --git a/arch/arm64/kernel/sys_ilp32.c b/arch/arm64/kernel/sys_ilp32.c
index 623191a..09605be 100644
--- a/arch
00644
index 000..93c09f2
--- /dev/null
+++ b/Documentation/arm64/ilp32.txt
@@ -0,0 +1,47 @@
+ILP32 AARCH64 SYSCALL ABI
+=
+Written by Andrew Pinski
+Updated by Philipp Tomsich
+Updated by Yury Norov
+
+
+This document describes the ILP32 syscall ABI and where it di
add ARM64_ILP32 to Kconfig
Jan Dakinevich (2):
ilp32: common 32-bit wrappers
arm64: ilp32: force IPC_64 in msgctl, shmctl, semctl
Philipp Tomsich (2):
arm64:ilp32: add documentation on the ILP32 ABI for ARM64
arm64:ilp32: change COMPAT_ELF_PLATFORM to report a a subplatform for
ILP32
Yury N
ned-off-by: Philipp Tomsich
Signed-off-by: Christoph Muellner
Signed-off-by: Yury Norov
Signed-off-by: Andrew Pinski
---
arch/arm64/Makefile | 5 +
1 file changed, 5 insertions(+)
diff --git a/arch/arm64/Makefile b/arch/arm64/Makefile
index d10b5d4..432b69a 100644
--- a/arch/arm64/Makefile
+++ b/
From: Andrew Pinski
Reviewed-by: David Daney
Signed-off-by: Philipp Tomsich
Signed-off-by: Christoph Muellner
Signed-off-by: Yury Norov
Signed-off-by: Andrew Pinski
---
arch/arm64/include/asm/elf.h | 20 +---
arch/arm64/include/asm/fpsimd.h| 2 +-
arch/arm64
From: Andrew Pinski
Reviewed-by: David Daney
Signed-off-by: Philipp Tomsich
Signed-off-by: Christoph Muellner
Signed-off-by: Yury Norov
Signed-off-by: Andrew Pinski
---
arch/arm64/Kconfig | 5 +
1 file changed, 5 insertions(+)
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
-off-by: Christoph Muellner
Signed-off-by: Yury Norov
---
arch/arm64/include/uapi/asm/bitsperlong.h | 9 -
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/arch/arm64/include/uapi/asm/bitsperlong.h
b/arch/arm64/include/uapi/asm/bitsperlong.h
index fce9c29..4265243 100644
From: Andrew Pinski
Defines the macros which allow the signal structures to be the same between
ILP32 and LP64.
Reviewed-by: David Daney
Signed-off-by: Philipp Tomsich
Signed-off-by: Christoph Muellner
Signed-off-by: Yury Norov
Signed-off-by: Andrew Pinski
---
arch/arm64/include/uapi/asm
From: Andrew Pinski
This patch introduces is_a32_compat_task and is_a32_thread so it is
easier
to say this is a a32 specific thread or a generic compat thread/task.
Reviewed-by: David Daney
Signed-off-by: Philipp Tomsich
Signed-off-by: Christoph Muellner
Signed-off-by: Yury Norov
Signed
From: Andrew Pinski
Reviewed-by: David Daney
Signed-off-by: Philipp Tomsich
Signed-off-by: Christoph Muellner
Signed-off-by: Yury Norov
Signed-off-by: Andrew Pinski
---
arch/arm64/include/asm/compat.h | 38 +++-
arch/arm64/include/asm/thread_info.h
From: Andrew Pinski
Reviewed-by: David Daney
Signed-off-by: Philipp Tomsich
Signed-off-by: Christoph Muellner
Signed-off-by: Yury Norov
Signed-off-by: Andrew Pinski
---
arch/arm64/include/asm/hwcap.h | 12 ++--
1 file changed, 10 insertions(+), 2 deletions(-)
diff --git a/arch
From: Andrew Pinski
If we have both ILP32 and AARCH32 compiled in, we need use the non compat start
thread for ILP32.
Reviewed-by: David Daney
Signed-off-by: Philipp Tomsich
Signed-off-by: Christoph Muellner
Signed-off-by: Yury Norov
Signed-off-by: Andrew Pinski
---
arch/arm64/include
From: Andrew Pinski
This patch supports core dumping on ILP32.
We need a few extra macros (COMPAT_PR_REG_SIZE and COMPAT_PRSTATUS_SIZE) due
to size differences of the register sets.
Reviewed-by: David Daney
Signed-off-by: Philipp Tomsich
Signed-off-by: Christoph Muellner
Signed-off-by: Yury
From: Jan Dakinevich
Reviewed-by: David Daney
Signed-off-by: Yury Norov
Signed-off-by: Jan Dakinevich
---
arch/arm64/kernel/Makefile | 1 +
arch/arm64/kernel/entry32-common.S | 37 +
arch/arm64/kernel/entry32.S| 29
in the compat case as it was the
non-compat case.
Reviewed-by: David Daney
Signed-off-by: Christoph Muellner
Signed-off-by: Philipp Tomsich
Signed-off-by: Yury Norov
Signed-off-by: Andrew Pinski
---
include/linux/compat.h | 4
kernel/ptrace.c| 24 +---
2
From: Andrew Pinski
Add a separate syscall-table for ILP32, which dispatches either to native
LP64 system call implementation or to compat-syscalls, as appropriate.
Reviewed-by: David Daney
Signed-off-by: Philipp Tomsich
Signed-off-by: Christoph Muellner
Signed-off-by: Yury Norov
Signed
From: Jan Dakinevich
Reviewed-by: David Daney
Signed-off-by: Yury Norov
Signed-off-by: Jan Dakinevich
---
arch/arm64/kernel/sys_ilp32.c | 19 +++
1 file changed, 19 insertions(+)
diff --git a/arch/arm64/kernel/sys_ilp32.c b/arch/arm64/kernel/sys_ilp32.c
index c366d92
From: Andrew Pinski
This patch adds the config option for ILP32.
Reviewed-by: David Daney
Signed-off-by: Philipp Tomsich
Signed-off-by: Christoph Muellner
Signed-off-by: Yury Norov
Signed-off-by: Andrew Pinski
---
arch/arm64/Kconfig | 9 -
1 file changed, 8 insertions(+), 1
t for ABIs.
Reviewed-by: David Daney
Signed-off-by: Yury Norov
---
arch/arm64/kernel/sys_ilp32.c | 86 +++
1 file changed, 86 insertions(+)
diff --git a/arch/arm64/kernel/sys_ilp32.c b/arch/arm64/kernel/sys_ilp32.c
index a2596f4..c5bc712 100644
--- a
From: Andrew Pinski
Set COMPAT_USE_NATIVE_SIGINFO to be true for non AARCH32 tasks.
Reviewed-by: David Daney
Signed-off-by: Philipp Tomsich
Signed-off-by: Christoph Muellner
Signed-off-by: Yury Norov
Signed-off-by: Andrew Pinski
---
arch/arm64/include/asm/compat.h | 3 +++
1 file changed
From: Philipp Tomsich
To make life for tools (such as gdb) easier when dealing with ILP32 processes,
we report a proper subarchitecture for ILP32 in the ELF auxiliary vectors.
Reviewed-by: David Daney
Signed-off-by: Philipp Tomsich
Signed-off-by: Christoph Muellner
Signed-off-by: Yury Norov
p32: add ARM64_ILP32 to Kconfig
Jan Dakinevich (1):
ilp32: common 32-bit wrappers
Philipp Tomsich (2):
arm64:ilp32: add documentation on the ILP32 ABI for ARM64
arm64:ilp32: change COMPAT_ELF_PLATFORM to report a a subplatform for
ILP32
Yury Norov (1):
aarch64: ilp32: use gene
From: Philipp Tomsich
Based on Andrew Pinski's original patch-series and adapted with changes
to reduce the duplication of code-paths and resolve issue found during
LTP testing.
Signed-off-by: Philipp Tomsich
Signed-off-by: Christoph Muellner
Signed-off-by: Yury Norov
Signed-off-by: A
ned-off-by: Christoph Muellner
Signed-off-by: Yury Norov
Signed-off-by: Andrew Pinski
Reviewed-by: David Daney
---
arch/arm64/Makefile | 5 +
1 file changed, 5 insertions(+)
diff --git a/arch/arm64/Makefile b/arch/arm64/Makefile
index d10b5d4..432b69a 100644
--- a/arch/arm64/Makefile
+++ b/
From: Andrew Pinski
Signed-off-by: Philipp Tomsich
Signed-off-by: Christoph Muellner
Signed-off-by: Yury Norov
Signed-off-by: Andrew Pinski
Reviewed-by: David Daney
---
arch/arm64/Kconfig | 7 ++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/arch/arm64/Kconfig b/arch
From: Andrew Pinski
Signed-off-by: Philipp Tomsich
Signed-off-by: Christoph Muellner
Signed-off-by: Yury Norov
Signed-off-by: Andrew Pinski
Reviewed-by: David Daney
---
arch/arm64/include/asm/elf.h | 20 +---
arch/arm64/include/asm/fpsimd.h| 2 +-
arch/arm64
From: Andrew Pinski
Defines the macros which allow the signal structures to be the same between
ILP32 and LP64.
Signed-off-by: Philipp Tomsich
Signed-off-by: Christoph Muellner
Signed-off-by: Yury Norov
Signed-off-by: Andrew Pinski
Reviewed-by: David Daney
---
arch/arm64/include/uapi/asm
From: Andrew Pinski
This patch introduces is_a32_compat_task and is_a32_thread so it is
easier
to say this is a a32 specific thread or a generic compat thread/task.
Signed-off-by: Philipp Tomsich
Signed-off-by: Christoph Muellner
Signed-off-by: Yury Norov
Signed-off-by: Andrew Pinski
From: Andrew Pinski
Signed-off-by: Philipp Tomsich
Signed-off-by: Christoph Muellner
Signed-off-by: Yury Norov
Signed-off-by: Andrew Pinski
Reviewed-by: David Daney
---
arch/arm64/include/asm/compat.h | 38 +++-
arch/arm64/include/asm/thread_info.h | 1
From: Andrew Pinski
Signed-off-by: Philipp Tomsich
Signed-off-by: Christoph Muellner
Signed-off-by: Yury Norov
Signed-off-by: Andrew Pinski
Reviewed-by: David Daney
---
arch/arm64/include/asm/hwcap.h | 12 ++--
1 file changed, 10 insertions(+), 2 deletions(-)
diff --git a/arch
From: Andrew Pinski
If we have both ILP32 and AARCH32 compiled in, we need use the non compat start
thread for ILP32.
Signed-off-by: Philipp Tomsich
Signed-off-by: Christoph Muellner
Signed-off-by: Yury Norov
Signed-off-by: Andrew Pinski
Reviewed-by: David Daney
---
arch/arm64/include/asm
From: Andrew Pinski
This patch supports core dumping on ILP32.
We need a few extra macros (COMPAT_PR_REG_SIZE and COMPAT_PRSTATUS_SIZE) due
to size differences of the register sets.
Signed-off-by: Philipp Tomsich
Signed-off-by: Christoph Muellner
Signed-off-by: Yury Norov
Signed-off-by
From: Andrew Pinski
Set COMPAT_USE_NATIVE_SIGINFO to be true for non AARCH32 tasks.
Signed-off-by: Philipp Tomsich
Signed-off-by: Christoph Muellner
Signed-off-by: Yury Norov
Signed-off-by: Andrew Pinski
Reviewed-by: David Daney
---
arch/arm64/include/asm/compat.h | 3 +++
1 file changed
, because it's more flexible to have independend support
for ABIs.
Signed-off-by: Yury Norov
Reviewed-by: David Daney
---
arch/arm64/kernel/sys_ilp32.c | 57 +
include/uapi/asm-generic/stat.h | 8 +++---
2 files changed, 62 insertions(+), 3 dele
From: Philipp Tomsich
To make life for tools (such as gdb) easier when dealing with ILP32 processes,
we report a proper subarchitecture for ILP32 in the ELF auxiliary vectors.
Signed-off-by: Philipp Tomsich
Signed-off-by: Christoph Muellner
Signed-off-by: Yury Norov
Signed-off-by: Andrew
From: Andrew Pinski
Add a separate syscall-table for ILP32, which dispatches either to native
LP64 system call implementation or to compat-syscalls, as appropriate.
Signed-off-by: Philipp Tomsich
Signed-off-by: Christoph Muellner
Signed-off-by: Yury Norov
Signed-off-by: Andrew Pinski
From: Jan Dakinevich
Signed-off-by: Yury Norov
Signed-off-by: Jan Dakinevich
Reviewed-by: David Daney
---
arch/arm64/kernel/Makefile | 1 +
arch/arm64/kernel/entry32-common.S | 37 +
arch/arm64/kernel/entry32.S| 29
From: Andrew Pinski
This patch adds the config option for ILP32.
Signed-off-by: Philipp Tomsich
Signed-off-by: Christoph Muellner
Signed-off-by: Yury Norov
Signed-off-by: Andrew Pinski
Reviewed-by: David Daney
---
arch/arm64/Kconfig | 9 -
1 file changed, 8 insertions(+), 1
in the compat case as it was the
non-compat case.
Signed-off-by: Christoph Muellner
Signed-off-by: Philipp Tomsich
Signed-off-by: Yury Norov
Signed-off-by: Andrew Pinski
Reviewed-by: David Daney
---
include/linux/compat.h | 4
kernel/ptrace.c| 24 +---
2
The test is derived from bitmap_parselist()
NO_LEN is reserved for use in following patches.
Reviewed-by: Andy Shevchenko
Signed-off-by: Yury Norov
---
lib/test_bitmap.c | 94 ++-
1 file changed, 93 insertions(+), 1 deletion(-)
diff --git a/lib
ing issues fixed.
v3:
- fix bitmap_clear() misuse.
- opencode in_str() helper.
- simplify while() in bitmap_parse()
v4:
- use isxdigit() where appropriate.
- clean signed-off-by list.
Yury Norov (7):
lib/string: add strnchrnul()
bitops: more BITS_TO_* macros
lib: add test for bitma
-off-by: Yury Norov
---
include/linux/bitops.h | 5 -
tools/include/linux/bitops.h | 9 +
2 files changed, 9 insertions(+), 5 deletions(-)
diff --git a/include/linux/bitops.h b/include/linux/bitops.h
index cf074bce3eb32..e61c4e6142641 100644
--- a/include/linux/bitops.h
+++ b
501 - 600 of 1116 matches
Mail list logo