Messages in this thread | | | Date | Tue, 3 Oct 2017 06:26:49 -0700 | From | Tejun Heo <> | Subject | [GIT PULL] percpu fixes for v4.14-rc3 |
| |
Hello, Linus.
Rather important fixes this time.
* The new percpu area allocator had a subtle bug in how it iterates the memory regions and could skip viable areas, which led to allocation failures for module static percpu variables. Dennis fixed the bug and another non-critical one in stat calculation.
* Mark noticed that the generic implementations of percpu local atomic reads aren't properly protected against irqs and there's a (slim) chance for split reads on some 32bit systems. Generic implementations are updated to disable irq when read size is larger than ulong size. This may have made some 32bit archs which can do atomic local 64bit accesses generate sub-optimal code. We need to find them out and implement arch-specific overrides.
Thanks.
The following changes since commit e365806ac289457263a133bd32df8df49897f612:
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs (2017-09-25 18:24:14 -0700)
are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu.git for-4.14-fixes
for you to fetch changes up to 1fa4df3e688902d033dfda796eb83ae6ad8d0488:
percpu: fix iteration to prevent skipping over block (2017-09-28 07:39:27 -0700)
---------------------------------------------------------------- Dennis Zhou (2): percpu: fix starting offset for chunk statistics traversal percpu: fix iteration to prevent skipping over block
Mark Rutland (1): percpu: make this_cpu_generic_read() atomic w.r.t. interrupts
include/asm-generic/percpu.h | 24 ++++++++++++++++++++++-- mm/percpu-stats.c | 2 +- mm/percpu.c | 4 ++++ 3 files changed, 27 insertions(+), 3 deletions(-)
-- tejun
| |