Le 31/05/2018 à 07:54, Michael Ellerman a écrit :
Christophe LEROY writes:
Le 29/05/2018 à 11:05, Geert Uytterhoeven a écrit :
Hi Christophe,
On Tue, May 29, 2018 at 10:56 AM, Christophe LEROY
wrote:
Le 29/05/2018 à 09:47, Geert Uytterhoeven a écrit :
On Tue, May 29, 2018 at 8:03 AM, Chr
Christophe LEROY writes:
> Le 29/05/2018 à 11:05, Geert Uytterhoeven a écrit :
>> Hi Christophe,
>> On Tue, May 29, 2018 at 10:56 AM, Christophe LEROY
>> wrote:
>>> Le 29/05/2018 à 09:47, Geert Uytterhoeven a écrit :
On Tue, May 29, 2018 at 8:03 AM, Christophe Leroy
> --- a/arch/powerpc/
2018-05-31 13:31 GMT+09:00 Michael Ellerman :
> Masahiro Yamada writes:
>> 2018-05-30 23:39 GMT+09:00 Michael Ellerman :
>>> Nicholas Piggin writes:
>>>
This series of patches improves th powerpc kbuild system. The
motivation was to to be compatible with the new Kconfig scripting
l
"Naveen N. Rao" writes:
> ...
A change log is always nice even if it's short :)
> Signed-off-by: Naveen N. Rao
> ---
> arch/powerpc/Kconfig | 1 +
> arch/powerpc/include/asm/error-injection.h | 9 +
> arch/powerpc/include/asm/ptrace.h | 5 +
> 3 files
On 11/05/18 16:13, Alastair D'Silva wrote:
From: Alastair D'Silva
Signed-off-by: Alastair D'Silva
Acked-by: Andrew Donnellan
--
Andrew Donnellan OzLabs, ADL Canberra
andrew.donnel...@au1.ibm.com IBM Australia Limited
On 11/05/18 16:13, Alastair D'Silva wrote:
From: Alastair D'Silva
In order for a userspace AFU driver to call the POWER9 specific
OCXL_IOCTL_ENABLE_P9_WAIT, it needs to verify that it can actually
make that call.
Signed-off-by: Alastair D'Silva
Acked-by: Andrew Donnellan
--
Andrew Donnell
On 11/05/18 16:13, Alastair D'Silva wrote:
From: Alastair D'Silva
In order to successfully issue as_notify, an AFU needs to know the TID
to notify, which in turn means that this information should be
available in userspace so it can be communicated to the AFU.
Signed-off-by: Alastair D'Silva
On Thu, May 31, 2018 at 08:23:20AM +0530, Akshay Adiga wrote:
> This patch adds support for new device-tree format for idle state
> description.
>
> Previously if a older kernel runs on a newer firmware, it may enable
> all available states irrespective of its capability of handling it.
> New devi
On Thu, May 31, 2018 at 08:23:04AM +0530, Akshay Adiga wrote:
> This patch adds support for new device-tree format for idle state
> description.
>
> Previously if a older kernel runs on a newer firmware, it may enable
> all available states irrespective of its capability of handling it.
> New devi
Make the existing initialized definition constant and copy
it to a __prombss copy
Signed-off-by: Benjamin Herrenschmidt
---
arch/powerpc/kernel/prom_init.c | 8 +++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/arch/powerpc/kernel/prom_init.c b/arch/powerpc/kernel/prom_init.c
For secure VMs, the signing tool will create a ticket called
the "ESM blob" with the signatures of the kernel and initrd
among other things.
This adds support to the wrapper script for adding that
blob via the "-e" option to the zImage.pseries.
It also adds code to the zImage wrapper itself to
re
We removed support for running under any OPAL version
earlier than v3 in 2015 (they never saw the light of day
anyway), but we kept some leftovers of this support in
prom_init.c, so let's take it out.
Signed-off-by: Benjamin Herrenschmidt
---
arch/powerpc/kernel/prom_init.c | 147 +++
This replaces all occurrences of __initdata for uninitialized
data with a new __prombss
Currently __promdata is defined to be __initdata but we'll
eventually change that.
Signed-off-by: Benjamin Herrenschmidt
---
arch/powerpc/kernel/prom_init.c | 55 +
1 file cha
Signed-off-by: Benjamin Herrenschmidt
---
arch/powerpc/kernel/prom_init.c | 10 +-
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/arch/powerpc/kernel/prom_init.c b/arch/powerpc/kernel/prom_init.c
index 67df2758a4e2..f54177a84dbc 100644
--- a/arch/powerpc/kernel/prom_init.c
As they are no longer used past the end of prom_init
Signed-off-by: Benjamin Herrenschmidt
---
arch/powerpc/kernel/prom_init.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/arch/powerpc/kernel/prom_init.c b/arch/powerpc/kernel/prom_init.c
index 8bb6740e3262..67df2758a
prom_init.c must not modify the kernel image outside
of the .bss.prominit section. Thus make sure that
prom_init.o doesn't have anything in any of these:
.data
.bss
.init.data
Signed-off-by: Benjamin Herrenschmidt
---
arch/powerpc/kernel/prom_init_check.sh | 16 +
This makes __prombss its own section, and for now store
it in .bss.
This will give us the ability later to store it elsewhere
and/or free it after boot (it's about 8KB).
Signed-off-by: Benjamin Herrenschmidt
---
arch/powerpc/kernel/prom_init.c | 2 +-
arch/powerpc/kernel/vmlinux.lds.S | 3 +++
Initialize it dynamically instead of statically
Signed-off-by: Benjamin Herrenschmidt
---
arch/powerpc/kernel/prom_init.c | 7 ++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/arch/powerpc/kernel/prom_init.c b/arch/powerpc/kernel/prom_init.c
index 7c3d285750ad..6a7549f64e28 1
It's never modified either
Signed-off-by: Benjamin Herrenschmidt
---
arch/powerpc/kernel/prom_init.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/powerpc/kernel/prom_init.c b/arch/powerpc/kernel/prom_init.c
index 158f9ece064e..860d2dbb6634 100644
--- a/arch/powerpc/ke
It is never modified
Signed-off-by: Benjamin Herrenschmidt
---
arch/powerpc/kernel/prom_init.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/powerpc/kernel/prom_init.c b/arch/powerpc/kernel/prom_init.c
index d6f52cc141c3..158f9ece064e 100644
--- a/arch/powerpc/kernel/p
It's not used anywhere else
Signed-off-by: Benjamin Herrenschmidt
---
arch/powerpc/kernel/prom_init.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/powerpc/kernel/prom_init.c b/arch/powerpc/kernel/prom_init.c
index f9d6befb55a6..d6f52cc141c3 100644
--- a/arch/powerpc/k
prom_init is a rather "special" bit of code. Run once when booting
from Open Firmware as pretty much the very first thing we do, it
will perform all communications with OF before it gets killed and
extract the device-tree for the kernel use. It will then re-enter
the kernel at its main entry point
On 11/05/18 16:13, Alastair D'Silva wrote:
From: Alastair D'Silva
The function removes the process element from NPU cache.
Signed-off-by: Alastair D'Silva
Acked-by: Andrew Donnellan
--
Andrew Donnellan OzLabs, ADL Canberra
andrew.donnel...@au1.ibm.com IBM Australia Limited
Masahiro Yamada writes:
> 2018-05-30 23:39 GMT+09:00 Michael Ellerman :
>> Nicholas Piggin writes:
>>
>>> This series of patches improves th powerpc kbuild system. The
>>> motivation was to to be compatible with the new Kconfig scripting
>>> language that Yamada-san has implemented here for merge
On 11/05/18 16:12, Alastair D'Silva wrote:
From: Alastair D'Silva
The current implementation of TID allocation, using a global IDR, may
result in an errant process starving the system of available TIDs.
Instead, use task_pid_nr(), as mentioned by the original author. The
scenario described whic
On 11/05/18 16:12, Alastair D'Silva wrote:
From: Alastair D'Silva
Switch the use of TIDR on it's CPU feature, rather than assuming it
is available based on architecture.
Signed-off-by: Alastair D'Silva
Reviewed-by: Andrew Donnellan
--
Andrew Donnellan OzLabs, ADL Canberra
and
On 11/05/18 16:12, Alastair D'Silva wrote:
From: Alastair D'Silva
This patch adds a CPU feature bit to show whether the CPU has
the TIDR register available, enabling as_notify/wait in userspace.
Signed-off-by: Alastair D'Silva
Reviewed-by: Andrew Donnellan
--
Andrew Donnellan
On 05/24/2018 12:51 PM, Ram Pai wrote:
> On Wed, May 23, 2018 at 09:50:02PM +0300, Michael S. Tsirkin wrote:
>> subj: s/virito/virtio/
>>
> ..snip..
>>> machine_subsys_initcall_sync(pseries, tce_iommu_bus_notifier_init);
>>> +
>>> +bool platform_forces_virtio_dma(struct virtio_device *vdev)
>>> +{
This patch adds support for new device-tree format for idle state
description.
Previously if a older kernel runs on a newer firmware, it may enable
all available states irrespective of its capability of handling it.
New device tree format adds a compatible flag, so that only kernel
which has the c
This patch adds support for new device-tree format for idle state
description.
Previously if a older kernel runs on a newer firmware, it may enable
all available states irrespective of its capability of handling it.
New device tree format adds a compatible flag, so that only kernel
which has the c
Hi all,
Today's linux-next merge of the powerpc tree got a conflict in:
arch/powerpc/kernel/module_64.c
between commit:
06aeb9e3f2bc ("powerpc/kbuild: move -mprofile-kernel check to Kconfig")
from the kbuild tree and commit:
250122baed29 ("powerpc64/module: Tighten detection of mcount c
Hi Christophe,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on powerpc/next]
[also build test ERROR on next-20180530]
[cannot apply to v4.17-rc7]
[if your patch is applied to the wrong git tree, please drop us a note to help
improve the system]
url:
https
Hi Christophe,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on powerpc/next]
[also build test ERROR on v4.17-rc7 next-20180530]
[if your patch is applied to the wrong git tree, please drop us a note to help
improve the system]
url:
https://github.com/0day-ci
tree: https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git
topic/kbuild
head: cfff26c2dc7a18a4d10366896a68fb0ef9c793cb
commit: cfff26c2dc7a18a4d10366896a68fb0ef9c793cb [4/4] powerpc/kbuild: move
-mprofile-kernel check to Kconfig
config: powerpc-allmodconfig
compiler: powerpc64-li
Remove superflous includes and add missing ones
Signed-off-by: Christophe Leroy
---
arch/powerpc/include/asm/hw_breakpoint.h | 1 +
arch/powerpc/include/asm/processor.h | 5 ++---
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/arch/powerpc/include/asm/hw_breakpoint.h
b/arch/
PPC_PIN_SIZE is specific to the 44x and is defined in mmu.h
Signed-off-by: Christophe Leroy
---
arch/powerpc/include/asm/book3s/32/pgtable.h | 5 -
arch/powerpc/include/asm/nohash/32/pgtable.h | 2 +-
2 files changed, 1 insertion(+), 6 deletions(-)
diff --git a/arch/powerpc/include/asm/book
set_breakpoint() is only used in process.c so make it static
Signed-off-by: Christophe Leroy
---
arch/powerpc/include/asm/debug.h | 1 -
arch/powerpc/kernel/process.c| 14 +++---
2 files changed, 7 insertions(+), 8 deletions(-)
diff --git a/arch/powerpc/include/asm/debug.h b/arch/p
Files not using fixmap consts or functions don't need asm/fixmap.h
Signed-off-by: Christophe Leroy
---
arch/powerpc/include/asm/fixmap.h| 2 --
arch/powerpc/kernel/head_8xx.S | 1 -
arch/powerpc/mm/dump_hashpagetable.c | 1 -
arch/powerpc/sysdev/cpm_common.c | 1 -
4 files changed,
files not using feature fixup don't need asm/feature-fixups.h
Signed-off-by: Christophe Leroy
---
arch/powerpc/include/asm/cputable.h | 1 -
arch/powerpc/include/asm/firmware.h | 1 -
arch/powerpc/include/asm/mmu.h | 1 -
arch/powerpc/include/asm/reg.h | 1 +
4 files changed, 1 inserti
ppc-opcode.h doesn't need asm-compat.h
neither does dt_cpu_ftrs.h
Signed-off-by: Christophe Leroy
---
arch/powerpc/include/asm/cputable.h | 1 -
arch/powerpc/include/asm/feature-fixups.h | 2 ++
arch/powerpc/include/asm/ppc-opcode.h | 1 -
3 files changed, 2 insertions(+), 2 deletions(
Files not using cpu_has_feature() don't need cpu_has_feature.h
Signed-off-by: Christophe Leroy
---
arch/powerpc/include/asm/cacheflush.h | 1 -
arch/powerpc/include/asm/cputime.h | 1 -
arch/powerpc/include/asm/dbell.h | 1 -
arch/powerpc/include/asm/dt_cpu_ftrs.h | 3 ---
arch/powerp
The purpose of this serie is to limit the number of includes to
only the necessary ones in order to reduce the number of files
recompiled everytime a header file is modified.
This is the start of the work, please provide feedback if any so
that I don't go in the wrong direction.
Christophe Leroy
page.h doesn't need kdump.h
Signed-off-by: Christophe Leroy
---
arch/powerpc/include/asm/page.h | 1 -
arch/powerpc/kernel/setup_32.c | 1 +
2 files changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/powerpc/include/asm/page.h b/arch/powerpc/include/asm/page.h
index db7be0779d55..a9fbefa
On 05/29/2018 10:16 PM, Scott Wood wrote:
> On Tue, 2018-05-29 at 15:22 +, Diana Madalina Craciun wrote:
>> Hi Scott,
>>
>> Thanks for the review.
>>
>> On 05/22/2018 11:31 PM, Scott Wood wrote:
>>> On Tue, 2018-05-22 at 10:10 +0300, Diana Craciun wrote:
Implement the barrier_nospec as a i
2018-05-30 23:39 GMT+09:00 Michael Ellerman :
> Nicholas Piggin writes:
>
>> This series of patches improves th powerpc kbuild system. The
>> motivation was to to be compatible with the new Kconfig scripting
>> language that Yamada-san has implemented here for merge:
>>
>> https://git.kernel.org/p
Nicholas Piggin writes:
> This series of patches improves th powerpc kbuild system. The
> motivation was to to be compatible with the new Kconfig scripting
> language that Yamada-san has implemented here for merge:
>
> https://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild.git/log
2018-05-30 21:19 GMT+09:00 Nicholas Piggin :
> The powerpc toolchain can compile combinations of 32/64 bit and
> big/little endian, so it's convenient to consider, e.g.,
>
> `CC -m64 -mbig-endian`
>
> To be the C compiler for the purpose of invoking it to build target
> artifacts. So overriding t
2018-05-30 21:19 GMT+09:00 Nicholas Piggin :
> Some 64-bit toolchains uses the wrong ISA variant for compiling 32-bit
> kernels, even with -m32. Debian's powerpc64le is one such case, and
> that is because it is built with --with-cpu=power8.
>
> So when cross compiling a 32-bit kernel with a 64-bit
2018-05-30 21:19 GMT+09:00 Nicholas Piggin :
> Some 64-bit toolchains uses the wrong ISA variant for compiling 32-bit
> kernels, even with -m32. Debian's powerpc64le is one such case, and
> that is because it is built with --with-cpu=power8.
>
> So when cross compiling a 32-bit kernel with a 64-bit
On 5/24/18 7:31 PM, Sam Bobroff wrote:
> EEH recovery currently fails on pSeries for some IOV capable PCI
> devices, if CONFIG_PCI_IOV is on and the hypervisor doesn't provide
> certain device tree properties for the device. (Found on an IOV
> capable device using the ipr driver.)
>
> Recovery f
>From ISA
"For data accesses, the context synchronizing instruction before the slbie,
slbieg, slbia, slbmte, tlbie, or tlbiel instruction ensures that all preceding
instructions that access data storage have completed to a point at which they
have reported all exceptions they will cause."
Add the
Fix the below crash on BookE 64. pgtable_page_dtor expects struct page *arg.
Also call the destructor on non book3s platforms correctly. This free up the
split ptl locks correctly if we had allocated them before.
Call Trace:
[c000f30c7520] [c021eeec] .kmem_cache_free+0x9c/0x44c (unrel
This eliminates the workaround that requires disabling
-mprofile-kernel by default in Kconfig.
[ Note: this depends on
https://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild.git
kconfig-shell-v3 ]
Signed-off-by: Nicholas Piggin
---
arch/powerpc/Kconfig
The powerpc toolchain can compile combinations of 32/64 bit and
big/little endian, so it's convenient to consider, e.g.,
`CC -m64 -mbig-endian`
To be the C compiler for the purpose of invoking it to build target
artifacts. So overriding the the CC variable to include thse flags
works for this p
Switch VDSO32 build over to use CROSS32_COMPILE directly, and have
it pass in -m32 after the standard c_flags. This allows endianness
overrides to be removed and the endian and bitness flags moved into
standard flags variables.
Signed-off-by: Nicholas Piggin
---
arch/powerpc/Makefile
Some 64-bit toolchains uses the wrong ISA variant for compiling 32-bit
kernels, even with -m32. Debian's powerpc64le is one such case, and
that is because it is built with --with-cpu=power8.
So when cross compiling a 32-bit kernel with a 64-bit toolchain, set
-mcpu=powerpc initially, which is the
This series of patches improves th powerpc kbuild system. The
motivation was to to be compatible with the new Kconfig scripting
language that Yamada-san has implemented here for merge:
https://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild.git/log/?h=kconfig
I have tested on top o
On Tue, 29 May 2018 22:39:48 +0900
Masahiro Yamada wrote:
> 2018-05-16 23:14 GMT+09:00 Nicholas Piggin :
> > Some 64-bit toolchains uses the wrong ISA variant for compiling 32-bit
> > kernels, even with -m32. Debian's powerpc64le is one such case, and
> > that is because it is built with --with-c
The stores to update the SLB shadow area must be made as they appear
in the C code, so that the hypervisor does not see an entry with
mismatched vsid and esid. Use WRITE_ONCE for this.
GCC has been observed to elide the first store to esid in the update,
which means that if the hypervisor interrup
When IODA2 creates a PE, it creates an IOMMU table with it_ops::free
set to pnv_ioda2_table_free() which calls pnv_pci_ioda2_table_free_pages().
Since iommu_tce_table_put() calls it_ops::free when the last reference
to the table is released, explicit call to pnv_pci_ioda2_table_free_pages()
is not
From: Simon Guo
This patch reworked selftest memcmp_64 so that memcmp selftest can
cover more test cases.
It adds testcases for:
- memcmp over 4K bytes size.
- s1/s2 with different/random offset on 16 bytes boundary.
- enter/exit_vmx_ops pairness.
Signed-off-by: Simon Guo
---
.../selftests/po
From: Simon Guo
This patch is based on the previous VMX patch on memcmp().
To optimize ppc64 memcmp() with VMX instruction, we need to think about
the VMX penalty brought with: If kernel uses VMX instruction, it needs
to save/restore current thread's VMX registers. There are 32 x 128 bits
VMX re
From: Simon Guo
This patch add VMX primitives to do memcmp() in case the compare size
is equal or greater than 4K bytes. KSM feature can benefit from this.
Test result with following test program(replace the "^>" with ""):
--
># cat tools/testing/selftests/powerpc/stringloops/memcmp.c
>#incl
From: Simon Guo
Some old tool chains don't know about instructions like vcmpequd.
This patch adds .long macro for vcmpequd and vcmpequb, which is
a preparation to optimize ppc64 memcmp with VMX instructions.
Signed-off-by: Simon Guo
---
arch/powerpc/include/asm/ppc-opcode.h | 11 +++
From: Simon Guo
Currently memcmp() 64bytes version in powerpc will fall back to .Lshort
(compare per byte mode) if either src or dst address is not 8 bytes aligned.
It can be opmitized in 2 situations:
1) if both addresses are with the same offset with 8 bytes boundary:
memcmp() can compare the
From: Simon Guo
There is some room to optimize memcmp() in powerpc 64 bits version for
following 2 cases:
(1) Even src/dst addresses are not aligned with 8 bytes at the beginning,
memcmp() can align them and go with .Llong comparision mode without
fallback to .Lshort comparision mode do compare b
From: Colin Ian King
Trivial fix to spelling mistake in bootx_printf message text.
Signed-off-by: Colin Ian King
---
arch/powerpc/platforms/powermac/bootx_init.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/powerpc/platforms/powermac/bootx_init.c
b/arch/powerpc/pla
On Wed, May 30, 2018 at 09:40:27AM +1000, Paul Mackerras wrote:
> On Wed, May 23, 2018 at 03:01:47PM +0800, wei.guo.si...@gmail.com wrote:
> > From: Simon Guo
> >
> > It is a simple patch just for moving kvmppc_save_tm/kvmppc_restore_tm()
> > functionalities to tm.S. There is no logic change. The
On Wed, May 30, 2018 at 03:35:40AM -0500, Segher Boessenkool wrote:
> On Wed, May 30, 2018 at 04:14:02PM +0800, Simon Guo wrote:
> > Hi Segher,
> > On Mon, May 28, 2018 at 06:05:59AM -0500, Segher Boessenkool wrote:
> > > On Fri, May 25, 2018 at 12:07:34PM +0800, wei.guo.si...@gmail.com wrote:
> >
On Wed, May 30, 2018 at 03:27:39AM -0500, Segher Boessenkool wrote:
> Hi!
>
> On Wed, May 30, 2018 at 04:11:50PM +0800, Simon Guo wrote:
> > On Mon, May 28, 2018 at 05:35:12AM -0500, Segher Boessenkool wrote:
> > > On Fri, May 25, 2018 at 12:07:33PM +0800, wei.guo.si...@gmail.com wrote:
> > > If t
Le 29/05/2018 à 22:03, Mathieu Malaterre a écrit :
On Mon, May 28, 2018 at 12:49 PM, Christophe Leroy
wrote:
At the time being, memcmp() compares two chunks of memory
byte per byte.
This patch optimises the comparison by comparing word by word.
A small benchmark performed on an 8xx compari
On Tue, 29 May 2018 18:06:02 +0530
"Naveen N. Rao" wrote:
> We already have an arch-independent way to set the instruction pointer
> with instruction_pointer_set(). Using this allows us to get rid of the
> need for override_function_with_return() that each architecture has to
> implement.
>
> Fu
On Wed, May 30, 2018 at 04:14:02PM +0800, Simon Guo wrote:
> Hi Segher,
> On Mon, May 28, 2018 at 06:05:59AM -0500, Segher Boessenkool wrote:
> > On Fri, May 25, 2018 at 12:07:34PM +0800, wei.guo.si...@gmail.com wrote:
> > > + /* save and restore cr0 */
> > > + mfocrf r5,64
> > > + EXIT_VMX_OPS
>
The generic implementation of strlen() reads strings byte per byte.
This patch implements strlen() in assembly based on a read of entire
words, in the same spirit as what some other arches and glibc do.
On a 8xx the time spent in strlen is reduced by 50-60% for long strings.
Signed-off-by: Chris
Hi!
On Wed, May 30, 2018 at 04:11:50PM +0800, Simon Guo wrote:
> On Mon, May 28, 2018 at 05:35:12AM -0500, Segher Boessenkool wrote:
> > On Fri, May 25, 2018 at 12:07:33PM +0800, wei.guo.si...@gmail.com wrote:
> > If this doesn't use cr0 anymore, you can do rlwinm r6,r6,0,7 instead of
> > andi r
Hi Michael,
On Mon, May 28, 2018 at 09:59:29PM +1000, Michael Ellerman wrote:
> Hi Simon,
>
> wei.guo.si...@gmail.com writes:
> > diff --git a/arch/powerpc/lib/memcmp_64.S b/arch/powerpc/lib/memcmp_64.S
> > index f20e883..4ba7bb6 100644
> > --- a/arch/powerpc/lib/memcmp_64.S
> > +++ b/arch/powerpc
Hi Segher,
On Mon, May 28, 2018 at 06:05:59AM -0500, Segher Boessenkool wrote:
> On Fri, May 25, 2018 at 12:07:34PM +0800, wei.guo.si...@gmail.com wrote:
> > + /* save and restore cr0 */
> > + mfocrf r5,64
> > + EXIT_VMX_OPS
> > + mtocrf 64,r5
> > + b .LcmpAB_lightweight
>
> That
Hi Segher,
On Mon, May 28, 2018 at 05:35:12AM -0500, Segher Boessenkool wrote:
> On Fri, May 25, 2018 at 12:07:33PM +0800, wei.guo.si...@gmail.com wrote:
> > _GLOBAL(memcmp)
> > cmpdi cr1,r5,0
> >
> > - /* Use the short loop if both strings are not 8B aligned */
> > - or r6,r3,r4
At the time being, memcmp() compares two chunks of memory
byte per byte.
This patch optimises the comparison by comparing word by word.
On the same way as commit 15c2d45d17418 ("powerpc: Add 64bit
optimised memcmp"), this patch moves memcmp() into a dedicated
file named memcmp_32.S
A small bench
Rewrite clear_user() on the same principle as memset(0), making use
of dcbz to clear complete cache lines.
This code is a copy/paste of memset(), with some modifications
in order to retrieve remaining number of bytes to be cleared,
as it needs to be returned in case of error.
On the same way as d
This serie intends to optimise memcmp() and __clear_user() for PPC32
in the same spirit as already done on PPC64.
The first patch rewrites __clear_user() by using dcbz intruction
The second patch rewrites memcmp() to compare 32 bits words instead
of comparing byte per byte.
As shown in each indiv
81 matches
Mail list logo