On 12/5/07, Jan Beulich [EMAIL PROTECTED] wrote:
Andrew Pinski [EMAIL PROTECTED] 25.11.07 19:45
On 11/25/07, Luca [EMAIL PROTECTED] wrote:
7.1. Add __attribute__((pointer_size(XXX))) and #pragma pointer_size
to allow 64-bit pointers in 32-bit mode and viceversa
This is already
On 11/25/07, Luca [EMAIL PROTECTED] wrote:
7.1. Add __attribute__((pointer_size(XXX))) and #pragma pointer_size
to allow 64-bit pointers in 32-bit mode and viceversa
This is already there, try using __attribute__((mode(DI) )).
-- Pinski
-
To unsubscribe from this list: send the line
On Tue, Mar 29, 2005 at 05:37:06PM +0300, Denis Vlasenko wrote:
/*
* This looks horribly ugly, but the compiler can optimize it totally,
* as the count is constant.
*/
static inline void * __constant_memcpy(void * to, const void * from, size_t
n)
{
if (n = 128)
On Feb 16, 2008 9:58 AM, Willy Tarreau [EMAIL PROTECTED] wrote:
Last but not least, gcc 4 tends to emit stupid checks, to the point that I
have replaced unlikely(x) with (x) in my code when gcc = 4 is detected. What
I observe is that the following code :
if (unlikely(p == NULL)) ...
On Feb 18, 2008 6:01 AM, Geert Uytterhoeven
[EMAIL PROTECTED] wrote:
This means it generates faster code with a current gcc for your platform.
But a future gcc might e.g. replace the whole loop with a division
(gcc SVN head (that will soon become gcc 4.3) already does
transformations
the copy in
fs/compat.c to make sure that it is not being used.
Signed-off-by: Andrew Pinski apin...@cavium.com
---
fs/compat.c |8
fs/select.c |4 ++--
2 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/fs/compat.c b/fs/compat.c
index 6af20de..298e3e1 100644
--- a/fs
The signal code for ILP32 uses one extra function from signal32.c; it does not
make sense to enable the whole signal32.c code so we move the function which
was being used to signal.c.
Signed-off-by: Andrew Pinski apin...@cavium.com
---
arch/arm64/kernel/signal.c | 85
Since the ILP32 ABI uses similar signal code as the LP64 ABI, it makes sense to
reuse rather
than copy the same code.
Signed-off-by: Andrew Pinski apin...@cavium.com
---
arch/arm64/kernel/signal.c | 170 +---
1 files changed, 1 insertions(+), 169
Right now CONFIG_COMPAT means enabling AARCH32 support in the ARM64 traget,
which we want to split out so we can it to mean any 32bit ABI support instead.
---
arch/arm64/Kconfig |6 +-
arch/arm64/include/asm/compat.h| 32
This patch adds full support of the ABI to the ARM64 target.
Signed-off-by: Andrew Pinski apin...@cavium.com
---
arch/arm64/Kconfig | 11 +-
arch/arm64/include/asm/Kbuild|1 -
arch/arm64/include/asm/compat.h | 72 ++-
arch/arm64
On Mon, Sep 9, 2013 at 2:32 PM, Andrew Pinski pins...@gmail.com wrote:
Since the ILP32 ABI uses similar signal code as the LP64 ABI, it makes sense
to reuse rather
than copy the same code.
I just noticed that signal_template.c was not part of this patch but
it is included with patch number 5
On Wed, Sep 11, 2013 at 4:09 AM, Catalin Marinas
catalin.mari...@arm.com wrote:
On Mon, Sep 09, 2013 at 10:32:57PM +0100, Andrew Pinski wrote:
The ILP32 ABI in ARM64 uses a slightly different pselect from either
the compat or even the native LP64 ABI. We would want to reuse some
On Wed, Sep 11, 2013 at 7:32 AM, Catalin Marinas
catalin.mari...@arm.com wrote:
On Mon, Sep 09, 2013 at 10:32:59PM +0100, Andrew Pinski wrote:
This patch adds full support of the ABI to the ARM64 target.
This description is too short. Please describe what the ABI is, what
in glibc is not
the one which is used by the kernel) I have not yet tested LTP for AARCH32 but
I have done simple testing of AARCH32 so an executable still runs. Each patch
has been tested seperately though ILP32 won't fully work until the last patch
has been added.
Thanks,
Andrew Pinski
in glibc is not
the one which is used by the kernel) I have not yet tested LTP for AARCH32 but
I have done simple testing of AARCH32 so an executable still runs. Each patch
has been tested seperately though ILP32 won't fully work until the last patch
has been added.
Thanks,
Andrew Pinski
Sometimes the compiler is set to default to ILP32 ABI so we want to make sure
the kernel can compile in that case.
Thanks,
Andrew Pinski
Signed-off-by: Andrew Pinski apin...@cavium.com
---
arch/arm64/Makefile |4
1 files changed, 4 insertions(+), 0 deletions(-)
diff --git a/arch
Sometimes the compiler is set to default to ILP32 ABI so we want to make sure
the kernel can compile in that case.
Thanks,
Andrew Pinski
Signed-off-by: Andrew Pinski apin...@cavium.com
---
arch/arm64/Makefile |4
1 files changed, 4 insertions(+), 0 deletions(-)
diff --git a/arch
Set COMPAT_USE_NATIVE_SIGINFO to be true for non AARCH32 tasks. The same
reasoning why we check AARCH32 as we did for COMPAT_USE_64BIT_TIME_T.
Thanks,
Andrew Pinski
Signed-off-by: Andrew Pinski apin...@cavium.com
---
arch/arm64/include/asm/compat.h |3 +++
1 files changed, 3 insertions
We want to split CONFIG_COMPAT so we can use the COMPAT interface in some cases
including
for compat binfmt.
Thanks,
Andrew Pinski
Signed-off-by: Andrew Pinski apin...@cavium.com
---
arch/arm64/Kconfig |8 ++--
1 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/arch/arm64
with shard libraries.
Thanks,
Andrew Pinski
Signed-off-by: Andrew Pinski apin...@cavium.com
---
arch/arm64/include/asm/elf.h | 66 +++--
1 files changed, 56 insertions(+), 10 deletions(-)
diff --git a/arch/arm64/include/asm/elf.h b/arch/arm64/include/asm/elf.h
With ARM64 ILP32 ABI, we want to use the non-compat siginfo as we want to
simplify signal handling for this new ABI. This patch just adds a new define
COMPAT_USE_NATIVE_SIGINFO and if it is true then read/write in the compat case
as it was the non-compat case.
Thanks,
Andrew Pinski
Signed
This patch adds the VDSO for ILP32. We need to use a different VDSO than LP64
since ILP32 uses ELF32 while LP64 uses ELF64.
After this patch, signal handling works mostly. In that signals go through
their action and then returned correctly.
Thanks,
Andrew Pinski
Signed-off-by: Andrew Pinski
Defines the macros which allow the signal structures to be the same between
ILP32 and LP64.
Thanks,
Andrew Pinski
Signed-off-by: Andrew Pinski apin...@cavium.com
---
arch/arm64/include/uapi/asm/siginfo.h | 21 +
arch/arm64/include/uapi/asm/signal.h | 32
Define __SYSCALL_NONCOMPAT so we use the 64bit naming scheme for ILP32.
Signed-off-by: Andrew Pinski apin...@cavium.com
---
arch/arm64/include/uapi/asm/unistd.h |7 +++
1 files changed, 7 insertions(+), 0 deletions(-)
diff --git a/arch/arm64/include/uapi/asm/unistd.h
b/arch/arm64
In ARM64, we want to allow the signal related structures to be same between the
32bit (ILP32) and the 64bit ABIs (LP64). We still want to use the generic
include files so we need some new defines that are used in UAPI; they default
to the same as it is before.
Thanks,
Andrew Pinski
Signed
This patch adds the thread bit for ILP32 and has is_compat_task return true in
that case. We don't set it yet though.
Thanks,
Andrew Pinski
Signed-off-by: Andrew Pinski apin...@cavium.com
---
arch/arm64/include/asm/compat.h | 32 ++--
arch/arm64/include/asm
Since TIF_32BIT in ARM64 (with ILP32 added) is not always says if this is a
compat task, we need to have the input driver understand that and use
is_compat_task instead.
Thanks,
Andrew Pinski
Signed-off-by: Andrew Pinski apin...@cavium.com
---
drivers/input/input-compat.h |2 +-
1 files
This patch changes CONFIG_COMPAT checks inside the arm64 which are AARCH32
specific.
Thanks,
Andrew Pinski
Signed-off-by: Andrew Pinski apin...@cavium.com
---
arch/arm64/include/asm/arch_timer.h |2 +-
arch/arm64/include/asm/elf.h| 23 ---
arch/arm64/include
We want to split CONFIG_COMPAT so we can use the COMPAT interface in some cases
including
for compat binfmt.
Thanks,
Andrew Pinski
Signed-off-by: Andrew Pinski apin...@cavium.com
---
arch/arm64/Kconfig |8 ++--
1 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/arch/arm64
Signed-off-by: Andrew Pinski apin...@cavium.com
---
arch/arm64/include/asm/hwcap.h | 12 ++--
1 files changed, 10 insertions(+), 2 deletions(-)
diff --git a/arch/arm64/include/asm/hwcap.h b/arch/arm64/include/asm/hwcap.h
index 024c461..cb87f91 100644
--- a/arch/arm64/include/asm
Since we want time_t and some other userland types to be the same between ILP32
and LP64, we define __kernel_long_t to be long long.
Thanks,
Andrew Pinski
Signed-off-by: Andrew Pinski apin...@cavium.com
---
arch/arm64/include/asm/Kbuild |1 -
arch/arm64/include/uapi/asm
We need to say to the userland API that bits per long is 32bits for ILP32.
Thanks,
Andrew Pinski
Signed-off-by: Andrew Pinski apin...@cavium.com
---
arch/arm64/include/uapi/asm/bitsperlong.h |7 ++-
1 files changed, 6 insertions(+), 1 deletions(-)
diff --git a/arch/arm64/include/uapi
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.
Thanks,
Andrew Pinski
Signed-off-by: Andrew Pinski apin...@cavium.com
---
include/uapi/asm-generic/unistd.h |5 -
1 files
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.
Thanks,
Andrew Pinski
Signed-off-by: Andrew Pinski apin...@cavium.com
---
arch/arm64/include/asm/compat.h | 31
This patch supports core dumping on ILP32. We need a few extra macros
(PR_REG_SIZE and PRSTATUS_SIZE) due to size differences of the register sets.
Thanks,
Andrew Pinski
Signed-off-by: Andrew Pinski apin...@cavium.com
---
arch/arm64/include/asm/elf.h | 22 --
arch/arm64
This adds the documentation about the ILP32 ABI and what is difference between
it and the normal generic 32bit ABI.
Thanks,
Andrew Pinski
Signed-off-by: Andrew Pinski apin...@cavium.com
---
Documentation/arm64/ilp32.txt | 57 +
1 files changed, 57
This patch adds the config option for ILP32.
Thanks,
Andrew Pinski
Signed-off-by: Andrew Pinski apin...@cavium.com
---
arch/arm64/Kconfig |9 -
1 files changed, 8 insertions(+), 1 deletions(-)
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index 032c712..92577da 100644
Some syscalls are still need to use the compat versions. So we need to have a
seperate syscall table for ILP32. This patch adds them including documentation
on why we need to use each one.
This list is based on the list from https://lkml.org/lkml/2013/9/11/478.
Thanks,
Andrew Pinski
Signed
If we have both ILP32 and AARCH32 compiled in, we need use the non compat start
thread for ILP32. We have to use TIF_32BIT_AARCH64 explicit due to header
depency issues.
Thanks,
Andrew Pinski
Signed-off-by: Andrew Pinski apin...@cavium.com
---
arch/arm64/include/asm/processor.h |9
If the user decided to change the stack_t that was on the stack when returning
from the signal handler, the stack_t's padding for ILP32 might be not zero. So
we need to use the syscall version of restore_altstack (ilp32_sys_sigaltstack).
Thanks,
Andrew Pinski
Signed-off-by: Andrew Pinski apin
due to AARCH32
requiring 4k pages).
Thanks,
Andrew Pinski
Signed-off-by: Andrew Pinski apin...@cavium.com
---
arch/arm64/include/asm/compat.h |3 +++
1 files changed, 3 insertions(+), 0 deletions(-)
diff --git a/arch/arm64/include/asm/compat.h b/arch/arm64/include/asm/compat.h
index
to it,
and that truncating values to 32 bits is the root of the problem), but
the above is definitely a hack which doesn't really address the real
problem.
restoring the values is hard since even the ptrace interface does not
allow for that.
Thanks,
Andrew Pinski
-hpa
--
To unsubscribe from this list: send
On Fri, Sep 13, 2013 at 5:12 AM, Catalin Marinas
catalin.mari...@arm.com wrote:
On Fri, Sep 13, 2013 at 07:18:48AM +0100, Andrew Pinski wrote:
On Wed, Sep 11, 2013 at 7:32 AM, Catalin Marinas
catalin.mari...@arm.com wrote:
On Mon, Sep 09, 2013 at 10:32:59PM +0100, Andrew Pinski wrote
On Wed, Sep 11, 2013 at 7:32 AM, Catalin Marinas
catalin.mari...@arm.com wrote:
On Mon, Sep 09, 2013 at 10:32:59PM +0100, Andrew Pinski wrote:
This patch adds full support of the ABI to the ARM64 target.
This description is too short. Please describe what the ABI is, what
On Mon, Oct 6, 2014 at 5:05 PM, Rich Felker dal...@libc.org wrote:
On Mon, Oct 06, 2014 at 04:48:52PM -0700, David Daney wrote:
On 10/06/2014 04:38 PM, Andy Lutomirski wrote:
On 10/06/2014 02:58 PM, Rich Felker wrote:
On Mon, Oct 06, 2014 at 02:45:29PM -0700, David Daney wrote:
[...]
This is
On Mon, Oct 6, 2014 at 5:21 PM, Rich Felker dal...@libc.org wrote:
On Mon, Oct 06, 2014 at 05:11:38PM -0700, Andrew Pinski wrote:
On Mon, Oct 6, 2014 at 5:05 PM, Rich Felker dal...@libc.org wrote:
On Mon, Oct 06, 2014 at 04:48:52PM -0700, David Daney wrote:
On 10/06/2014 04:38 PM, Andy
for core dumping for easier usage.
Andrew Pinski (24):
ARM64: Force LP64 to compile the kernel
ARM64: Rename COMPAT to AARCH32_EL0 in Kconfig
ARM64: Change some CONFIG_COMPAT over to use CONFIG_AARCH32_EL0
instead
ARM64:ILP32: Set kernel_long to long long so we can reuse most
Sometimes the compiler is set to default to ILP32 ABI so we want to make sure
the kernel can compile in that case.
Signed-off-by: Andrew Pinski apin...@cavium.com
---
arch/arm64/Makefile |4
1 files changed, 4 insertions(+), 0 deletions(-)
diff --git a/arch/arm64/Makefile b/arch/arm64
We want to split CONFIG_COMPAT so we can use the COMPAT interface in some cases
including
for compat binfmt.
Signed-off-by: Andrew Pinski apin...@cavium.com
---
arch/arm64/Kconfig |8 ++--
1 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/arch/arm64/Kconfig b/arch/arm64
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: Andrew Pinski apin...@cavium.com
---
include/uapi/asm-generic/unistd.h |6 +-
1 files changed, 5 insertions
In ARM64, we want to allow the signal related structures to be same between the
32bit (ILP32) and the 64bit ABIs (LP64). We still want to use the generic
include files so we need some new defines that are used in UAPI; they
default to the same as it is before.
Signed-off-by: Andrew Pinski apin
This patch adds the functions which returns if the current task is an
ILP32 task and one returns if the thread is an ILP32 thread.
Signed-off-by: Andrew Pinski apin...@cavium.com
---
arch/arm64/include/asm/compat.h | 22 ++
1 files changed, 22 insertions(+), 0 deletions
Since we want time_t and some other userland types to be the same between ILP32
and LP64, we define __kernel_long_t to be long long.
Signed-off-by: Andrew Pinski apin...@cavium.com
---
arch/arm64/include/uapi/asm/posix_types.h |8 +++-
1 files changed, 7 insertions(+), 1 deletions
We need to say to the userland API that bits per long is 32bits for ILP32.
Signed-off-by: Andrew Pinski apin...@cavium.com
---
arch/arm64/include/uapi/asm/bitsperlong.h |9 -
1 files changed, 8 insertions(+), 1 deletions(-)
diff --git a/arch/arm64/include/uapi/asm/bitsperlong.h
b
Define __SYSCALL_NONCOMPAT so we use the 64bit naming scheme for ILP32.
Signed-off-by: Andrew Pinski apin...@cavium.com
---
arch/arm64/include/uapi/asm/unistd.h |6 ++
1 files changed, 6 insertions(+), 0 deletions(-)
diff --git a/arch/arm64/include/uapi/asm/unistd.h
b/arch/arm64
With ARM64 ILP32 ABI, we want to use the non-compat
siginfo as we want to simplify signal handling for this new ABI.
This patch just adds a new define COMPAT_USE_NATIVE_SIGINFO and
if it is true then read/write in the compat case as it was the
non-compat case.
Signed-off-by: Andrew Pinski apin
This patch adds the config option for ILP32.
Signed-off-by: Andrew Pinski apin...@cavium.com
---
arch/arm64/Kconfig |9 -
1 files changed, 8 insertions(+), 1 deletions(-)
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index 73c93dd..4ee4183 100644
--- a/arch/arm64/Kconfig
If the user decided to change the stack_t that was on the stack when returning
from the signal handler, the stack_t's padding for ILP32 might be not zero.
So we need to use the syscall version of restore_altstack
(ilp32_sys_sigaltstack).
Signed-off-by: Andrew Pinski apin...@cavium.com
---
arch
Signed-off-by: Andrew Pinski apin...@cavium.com
---
arch/arm64/include/asm/compat.h | 10 ++
arch/arm64/include/asm/hwcap.h |2 --
2 files changed, 10 insertions(+), 2 deletions(-)
diff --git a/arch/arm64/include/asm/compat.h b/arch/arm64/include/asm/compat.h
index eca6eec
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: Andrew Pinski apin...@cavium.com
---
arch/arm64/include/asm/elf.h | 23 +--
arch/arm64/kernel
Set COMPAT_USE_NATIVE_SIGINFO to be true for non AARCH32 tasks.
Signed-off-by: Andrew Pinski apin...@cavium.com
---
arch/arm64/include/asm/compat.h |3 +++
1 files changed, 3 insertions(+), 0 deletions(-)
diff --git a/arch/arm64/include/asm/compat.h b/arch/arm64/include/asm/compat.h
index
This patch adds the VDSO for ILP32. We need to use a different
VDSO than LP64 since ILP32 uses ELF32 while LP64 uses ELF64.
After this patch, signal handling works mostly. In that signals
go through their action and then returned correctly.
Signed-off-by: Andrew Pinski apin...@cavium.com
Defines the macros which allow the signal structures to be the same between
ILP32 and LP64.
Signed-off-by: Andrew Pinski apin...@cavium.com
---
arch/arm64/include/uapi/asm/siginfo.h | 33
arch/arm64/include/uapi/asm/signal.h | 34
If we have both ILP32 and AARCH32 compiled in, we need use the non compat start
thread for ILP32.
Signed-off-by: Andrew Pinski apin...@cavium.com
---
arch/arm64/include/asm/processor.h | 11 +++
1 files changed, 11 insertions(+), 0 deletions(-)
diff --git a/arch/arm64/include/asm
This adds the documentation about the ILP32 ABI and what is difference between
it and the normal generic 32bit ABI.
Signed-off-by: Andrew Pinski apin...@cavium.com
---
Documentation/arm64/ilp32.txt | 57 +
1 files changed, 57 insertions(+), 0 deletions
On some targets (x86 [32bit and x32] and arm64 [aarch32 and ilp32]), there are
two compat elf abis. This adds a few more #define * COMPAT_* for compat
targets to define if needed.
Signed-off-by: Andrew Pinski apin...@cavium.com
---
fs/compat_binfmt_elf.c | 17 +
1 files
Signed-off-by: Andrew Pinski apin...@cavium.com
---
arch/arm64/include/asm/elf.h | 59 +++--
1 files changed, 50 insertions(+), 9 deletions(-)
diff --git a/arch/arm64/include/asm/elf.h b/arch/arm64/include/asm/elf.h
index 795dc9f..52083cd 100644
--- a/arch
due to AARCH32 requiring 4k pages).
Signed-off-by: Andrew Pinski apin...@cavium.com
---
arch/arm64/include/asm/compat.h |3 +++
1 files changed, 3 insertions(+), 0 deletions(-)
diff --git a/arch/arm64/include/asm/compat.h b/arch/arm64/include/asm/compat.h
index 9082b27..eca6eec 100644
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: Andrew Pinski apin...@cavium.com
---
arch/arm64/include/asm/compat.h | 21 +
arch/arm64/include/asm/elf.h
This patch changes CONFIG_COMPAT checks inside the arm64 which are AARCH32
specific
Signed-off-by: Andrew Pinski apin...@cavium.com
---
arch/arm64/include/asm/arch_timer.h |2 +-
arch/arm64/include/asm/elf.h| 20 +---
arch/arm64/include/asm/fpsimd.h |2
Some syscalls are still need to use the compat versions.
So we need to have a seperate syscall table for ILP32.
This patch adds them including documentation on why we need to use each one.
This list is based on the list from https://lkml.org/lkml/2013/9/11/478.
Signed-off-by: Andrew Pinski apin
On Fri, Nov 13, 2015 at 7:34 AM, Arnd Bergmann wrote:
> On Thursday 12 November 2015 14:47:18 Andreas Schwab wrote:
>> Arnd Bergmann writes:
>>
>> > On Thursday 12 November 2015 10:44:55 Andreas Schwab wrote:
>> >> Arnd Bergmann writes:
>> >>
>> >> >
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 reasons (after v5 discussion);
>
> Are the updated glibc patches available
/358995.html.
It allows for faster access to midr_el1 than going through a trap and
does not exist if the set of cores are not the same.
Signed-off-by: Andrew Pinski apin...@cavium.com
---
arch/arm64/include/asm/cpu.h |1 +
arch/arm64/include/asm/elf.h |6 ++
arch/arm64/kernel/cpuinfo.c
/358995.html.
It allows for faster access to midr_el1 than going through a trap and
does not exist if the set of cores are not the same.
Changes from v1:
Forgot to include the auxvec.h part.
Signed-off-by: Andrew Pinski apin...@cavium.com
---
arch/arm64/include/asm/cpu.h |1 +
arch/arm64
/358995.html.
It allows for faster access to midr_el1 than going through a trap and
does not exist if the set of cores are not the same.
Signed-off-by: Andrew Pinski apin...@cavium.com
---
arch/arm64/include/asm/cpu.h |1 +
arch/arm64/include/asm/elf.h |6 ++
arch/arm64/kernel/cpuinfo.c
siarhei.siamas...@gmail.com> wrote:
>> >
>> > On Wed, 2 Sep 2015 01:58:56 +0800
>> > pins...@gmail.com wrote:
>> >
>> >>> On Sep 2, 2015, at 1:30 AM, Mark Rutland <mark.rutl...@arm.com> wrote:
>> >>>
>> >>>
ows
> the lockup, which really translates to c55a6ffa62.
Yes as mutex_optimistic_spin calls into osq_lock/osq_unlock. And
81a43adae3b9 changed mutex.c which David thought was where the issue
was located rather than not what mutex_optimistic_spin called.
Thanks,
Andrew Pinski
>
> Th
On Thu, Dec 10, 2015 at 11:44 AM, David Danny wrote:
>
> Hi,
>
> We are getting soft lockup OOPs on Cavium CN88XX (A.K.A. ThunderX), which is
> an arm64 implementation.
I get a slightly different OOPs and reverting
c55a6ffa6285e29f874ed403979472631ec70bff I was able to boot.
What I saw with
On Thu, Dec 10, 2015 at 7:29 PM, Andrew Pinski <pins...@gmail.com> wrote:
> On Thu, Dec 10, 2015 at 11:44 AM, David Danny wrote:
>>
>> Hi,
>>
>> We are getting soft lockup OOPs on Cavium CN88XX (A.K.A. ThunderX), which is
>> an arm64 implementati
ration
of function ‘BUILD_BUG_ON_INVALID’
[-Werror=implicit-function-declaration]
VM_WARN_ONCE(!pte_young(pte),
^
Thanks,
Andrew Pinski
>
> Signed-off-by: Catalin Marinas <catalin.mari...@arm.com>
> Cc: Will Deacon <will.dea...@arm.com>
> ---
> arch/arm64/include/asm/pgtable.h | 11
On Tue, Dec 21, 2015 at 5:43 AM, Arnd Bergmann <a...@arndb.de> wrote:
>
> On Monday 21 December 2015, Will Deacon wrote:
>> On Sat, Dec 19, 2015 at 04:11:18PM -0800, Andrew Pinski wrote:
>> > Adding a check for the cache line size is not much overhead.
>> > S
Adding a check for the cache line size is not much overhead.
Special case 128 byte cache line size.
This improves copy_page by 85% on ThunderX compared to the
original implementation.
For LMBench, it improves between 4-10%.
Signed-off-by: Andrew Pinski <apin...@cavium.com>
---
arch/arm
The problem here is that GCC 6 and above emits .arch now
for each function so now the global .arch_extension has
no effect. This fixes the problem by putting
.arch_extension inside ARM64_LSE_ATOMIC_INSN so
it is enabled for each place where LSE is used.
Signed-off-by: Andrew Pinski <a
On Thu, Dec 17, 2015 at 12:10 PM, Arnd Bergmann wrote:
> On Thursday 17 December 2015 18:27:53 Catalin Marinas wrote:
>> On Wed, Dec 16, 2015 at 12:42:38AM +0300, Yury Norov wrote:
>
>> > +#define compat_sys_lookup_dcookie sys_lookup_dcookie
>> > +#define compat_sys_pread64
On Wednesday 18 November 2015 00:16:54 Yury Norov wrote:
>> > > > From: Andrew Pinski <apin...@cavium.com>
>> > > >
>> > > > Add a separate syscall-table for ILP32, which dispatches either to
>> > > > native
>> > >
function, thereby properly annotating them.
* allows perf to identify function calls, allowing called functions to
be followed in the annotated view.
Signed-off-by: Andrew Pinski <apin...@cavium.com>
---
tools/perf/util/annotate.c | 64 +++---
1 file c
On Tue, Jun 21, 2016 at 8:42 AM, Arnd Bergmann wrote:
> On Tuesday, June 21, 2016 10:36:53 AM CEST Joseph Myers wrote:
>> On Tue, 21 Jun 2016, Yury Norov wrote:
>>
>> > Signed-off-by: Yury Norov
>>
>> You're missing a patch description. What does
On Thu, Jun 23, 2016 at 12:36 AM, Yury Norov <yno...@caviumnetworks.com> wrote:
> On Thu, Jun 23, 2016 at 09:32:46AM +0200, Andreas Schwab wrote:
>> Andrew Pinski <pins...@gmail.com> writes:
>>
>> > So if you want aarch64 to be compatible w
On Thu, Jun 23, 2016 at 12:32 AM, Andreas Schwab <sch...@suse.de> wrote:
> Andrew Pinski <pins...@gmail.com> writes:
>
>> So if you want aarch64 to be compatible with aarch32, you need to
>> define __WORDSIZE_TIME64_COMPAT32. If we don't want aarch64 and
>
On Wed, Jun 22, 2016 at 9:35 PM, Yury Norov <yno...@caviumnetworks.com> wrote:
> On Tue, Jun 21, 2016 at 11:14:54AM +0100, Szabolcs Nagy wrote:
>> On 21/06/16 06:06, Yury Norov wrote:
>> > From: Andrew Pinski <apin...@cavium.com>
>> >
>> > NOTE Thi
On Fri, Jun 24, 2016 at 4:38 AM, Florian Weimer <fwei...@redhat.com> wrote:
> On 06/23/2016 09:56 AM, Andreas Schwab wrote:
>>
>> Andrew Pinski <pins...@gmail.com> writes:
>>
>>> So the question becomes do we care enough about the incompatibles
>>
On many cores, udiv with a large value is slow, expand instead
the division out to be what GCC would have generated for the
divide by 1000.
On ThunderX, the speeds up gettimeofday by 5%.
Signed-off-by: Andrew Pinski <apin...@cavium.com>
---
arch/arm64/kernel/vdso/gettimeofday.S
*** BLURB HERE ***
Andrew Pinski (2):
ARM64:VDSO: Improve gettimeofday, don't use udiv
ARM64:VDSO: Improve __do_get_tspec, don't use udiv
arch/arm64/kernel/vdso/gettimeofday.S | 47
1 files changed, 35 insertions(+), 12 deletions(-)
--
1.7.2.5
.
On ThunderX, this speeds up gettimeofday by 16.6%.
Signed-off-by: Andrew Pinski <apin...@cavium.com>
---
arch/arm64/kernel/vdso/gettimeofday.S | 27 +++
1 files changed, 19 insertions(+), 8 deletions(-)
diff --git a/arch/arm64/kernel/vdso/gettimeofday.S
b/arch/arm64/kerne
On Thu, Apr 7, 2016 at 5:18 AM, Adam Borowski wrote:
> On Wed, 6 Apr 2016, Geert Uytterhoeven wrote:
>> On Wed, Apr 6, 2016 at 12:08 AM, Yury Norov
>> wrote:
>>> v6:
>>> - time_t, __kenel_off_t and other types turned to be 32-bit
>>>for
On 3/17/2016 7:27 AM, Catalin Marinas wrote:
On Wed, Mar 16, 2016 at 10:26:08AM -0500, Timur Tabi wrote:
Catalin Marinas wrote:
Why do you need your own defconfig? If it's just on the short term until
all your code is upstream, that's fine, but this goes against the single
Image aim. I would
On Wed, Apr 27, 2016 at 12:30 AM, Andrew Pinski <pins...@gmail.com> wrote:
> On Fri, Apr 22, 2016 at 8:37 PM, Zhangjian (Bamvor)
> <bamvor.zhangj...@huawei.com> wrote:
>> Hi, Yury
>>
>>
>> On 2016/4/6 6:44, Yury Norov wrote:
>>>
>>&
On Fri, Apr 22, 2016 at 8:37 PM, Zhangjian (Bamvor)
wrote:
> Hi, Yury
>
>
> On 2016/4/6 6:44, Yury Norov wrote:
>>
>> There are about 20 failing tests of 782 in lite scenario.
>> float_bessel
>> float_exp_log
>> float_iperb
>> float_power
>> float_trigo
>> pipeio_1
>>
c
ZERO(0)
ZERO(1)
...
ENTRY(__kernel_clock_gettime)
.cfi_startproc
ZERO(1)
...
ENTRY(__kernel_clock_getres)
.cfi_startproc
ZERO(1)
Thanks,
Andrew Pinski
>
> Yury.
1 - 100 of 226 matches
Mail list logo