Re: [PATCH] powerpc/64s/radix: Fix radix segment exception handling

2019-03-30 Thread Aneesh Kumar K.V
Nicholas Piggin writes: > Commit 48e7b76957 ("powerpc/64s/hash: Convert SLB miss handlers to C") > broke the radix-mode segment exception handler. In radix mode, this is > exception is not an SLB miss, rather it signals that the EA is outside > the range translated by any page table. > > The

Re: CONFIG_ARCH_SUPPORTS_INT128: Why not mips, s390, powerpc, and alpha?

2019-03-30 Thread Segher Boessenkool
Hi! On Fri, Mar 29, 2019 at 01:07:07PM +, George Spelvin wrote: > I was working on some scaling code that can benefit from 64x64->128-bit > multiplies. GCC supports an __int128 type on processors with hardware > support (including z/Arch and MIPS64), but the support was broken on > early

Re: CONFIG_ARCH_SUPPORTS_INT128: Why not mips, s390, powerpc, and alpha?

2019-03-30 Thread Heiko Carstens
On Fri, Mar 29, 2019 at 01:07:07PM +, George Spelvin wrote: > (Cross-posted in case there are generic issues; please trim if > discussion wanders into single-architecture details.) > > I was working on some scaling code that can benefit from 64x64->128-bit > multiplies. GCC supports an

Re: [PATCH -next] crypto: nx842 - remove set but not used variables 'dpadding' and 'max_sync_size'

2019-03-30 Thread Mukesh Ojha
On 3/30/2019 11:24 AM, Yue Haibing wrote: From: YueHaibing Fixes gcc '-Wunused-but-set-variable' warning: drivers/crypto/nx/nx-842.c: In function 'decompress': drivers/crypto/nx/nx-842.c:356:25: warning: variable 'dpadding' set but not used [-Wunused-but-set-variable]

Re: [PATCH 2/2] arch: add pidfd and io_uring syscalls everywhere

2019-03-30 Thread Heiko Carstens
On Mon, Mar 25, 2019 at 03:47:37PM +0100, Arnd Bergmann wrote: > Add the io_uring and pidfd_send_signal system calls to all architectures. > > These system calls are designed to handle both native and compat tasks, > so all entries are the same across architectures, only arm-compat and > the

Re: CONFIG_ARCH_SUPPORTS_INT128: Why not mips, s390, powerpc, and alpha?

2019-03-30 Thread George Spelvin
General update: I've since found the reason for the GCC version check. It's not *broken* support (apologies for impugning GCC), but *inefficient* support via a muditi3 helper function. The version check is the version which added in-line code generation. For example, s390 support was added in

Re: CONFIG_ARCH_SUPPORTS_INT128: Why not mips, s390, powerpc, and alpha?

2019-03-30 Thread George Spelvin
I've been tracking down when "umulditi3" support was added to various gcc platforms. So far, I've found: ia64: 2005-07-28, gcc 4.1.0 https://gcc.gnu.org/viewcvs/gcc?view=revision=102463 mips: 2008-06-09, gcc 4.4.0 https://gcc.gnu.org/viewcvs/gcc?view=revision=136600 alpha: 2013-02-01, gcc

Re: [RFC PATCH] drivers/dax: Allow to include DEV_DAX_PMEM as builtin

2019-03-30 Thread Dan Williams
On Fri, Mar 29, 2019 at 10:42 PM Aneesh Kumar K.V wrote: > > This move the dependency to DEV_DAX_PMEM_COMPAT such that only > if DEV_DAX_PMEM is built as module we can allow the compat support. > > This allows to test the new code easily in a emulation setup where we > often build things without

Re: CONFIG_ARCH_SUPPORTS_INT128: Why not mips, s390, powerpc, and alpha?

2019-03-30 Thread George Spelvin
On Sat, 30 Mar 2019 at 09:43:47 +0100, Heiko Carstens wrote: > It hasn't been enabled on s390 simply because at least I wasn't aware > of this config option. Feel free to send a patch, otherwise I will > enable this. Whatever you prefer. > > Thanks for pointing this out! Here's a draft patch,

Re: [PATCH 0/5] simple sort swap function usage improvements

2019-03-30 Thread Andy Shevchenko
On Sat, Mar 30, 2019 at 6:39 PM Andrey Abramov wrote: > > This is the logical continuation of sort improvements by George Spelvin > "lib/sort & lib/list_sort: faster and smaller" series > (added to the linux-next really recently). > > Patches from 1 to 4 replace simple swap functions with the

Re: [PATCH 0/5] simple sort swap function usage improvements

2019-03-30 Thread George Spelvin
Great work; that is indeed a logical follow-on. Reviewed by: George Spelvin I you feel even more ambitious, you could try impementing Rasmus Villemoes' idea of having generic *compare* functions. (It's on my to-do list, but I haven't made meaningful progress yet, and I'm happy to pawn it off.)

Re: [PATCH 5/5] Lib: sort.h: replace int size with size_t size in the swap function

2019-03-30 Thread gre...@linuxfoundation.org
On Sat, Mar 30, 2019 at 07:43:53PM +0300, Andrey Abramov wrote: > Replace int type with size_t type of the size argument > in the swap function, also affect all its dependencies. This says _what_ the patch does, but it gives no clue as to _why_ you are doing this. Neither did your 0/5 patch :(

Re: CONFIG_ARCH_SUPPORTS_INT128: Why not mips, s390, powerpc, and alpha?

2019-03-30 Thread Segher Boessenkool
On Sat, Mar 30, 2019 at 09:00:15AM +1300, Michael Cree wrote: > It does move the umulh inside the loop but that seems sensible since > the use of unlikely() implies that the loop is unlikely to be taken > so on average it would be a good bet to start the calculation of > umulh earlier since it has

[PATCH 5/5] Lib: sort.h: replace int size with size_t size in the swap function

2019-03-30 Thread Andrey Abramov
Replace int type with size_t type of the size argument in the swap function, also affect all its dependencies. Signed-off-by: Andrey Abramov --- arch/x86/kernel/unwind_orc.c | 2 +- include/linux/sort.h | 2 +- kernel/jump_label.c | 2 +- lib/extable.c| 2 +-

[PATCH 0/5] simple sort swap function usage improvements

2019-03-30 Thread Andrey Abramov
This is the logical continuation of sort improvements by George Spelvin "lib/sort & lib/list_sort: faster and smaller" series (added to the linux-next really recently). Patches from 1 to 4 replace simple swap functions with the built-in (which is now much faster) and grouped by subsystem (after

[PATCH 4/5] ubifs: find.c: replace swap function with built-in one

2019-03-30 Thread Andrey Abramov
Replace swap_dirty_idx function with built-in one, because swap_dirty_idx does only a simple byte to byte swap. Signed-off-by: Andrey Abramov --- fs/ubifs/find.c | 9 + 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/fs/ubifs/find.c b/fs/ubifs/find.c index

Re: CONFIG_ARCH_SUPPORTS_INT128: Why not mips, s390, powerpc, and alpha?

2019-03-30 Thread Segher Boessenkool
On Sat, Mar 30, 2019 at 11:28:21AM +, George Spelvin wrote: > >> I like that the MIPS code leaves the high half of the product in > >> the hi register until it tests the low half; I wish PowerPC would > >> similarly move the mulhdu *after* the loop, > > > The MIPS code has the multiplication

Re: CONFIG_ARCH_SUPPORTS_INT128: Why not mips, s390, powerpc, and alpha?

2019-03-30 Thread Segher Boessenkool
On Sat, Mar 30, 2019 at 10:30:23AM +, George Spelvin wrote: > For s390, that was added on 24 March 2017 by > https://gcc.gnu.org/viewcvs/gcc?view=revision=246457 > which is part of GCC 7. > > It also only applies to TARGET_ARCH12, which I am guessing > corresponds to

[PATCH 2/5] powerpc: module_[32|64].c: replace swap function with built-in one

2019-03-30 Thread Andrey Abramov
Replace relaswap with built-in one, because of relaswap does a simple byte to byte swap. Signed-off-by: Andrey Abramov --- arch/powerpc/kernel/module_32.c | 17 + arch/powerpc/kernel/module_64.c | 17 + 2 files changed, 2 insertions(+), 32 deletions(-) diff

[PATCH 1/5] arch/arc: unwind.c: replace swap function with built-in one

2019-03-30 Thread Andrey Abramov
Replace swap_eh_frame_hdr_table_entries with built-in one, because swap_eh_frame_hdr_table_entries does a simple byte to byte swap. Signed-off-by: Andrey Abramov --- arch/arc/kernel/unwind.c | 20 ++-- 1 file changed, 2 insertions(+), 18 deletions(-) diff --git

[PATCH 3/5] ocfs2: dir, refcounttree, xattr: replace swap functions with built-in one

2019-03-30 Thread Andrey Abramov
Replace dx_leaf_sort_swap, swap_refcount_rec and swap_xe functions with built-in one, because they do only a simple byte to byte swap. Signed-off-by: Andrey Abramov --- fs/ocfs2/dir.c | 13 + fs/ocfs2/refcounttree.c | 13 +++-- fs/ocfs2/xattr.c| 15