2021-04-10 18:23:50

by Dennis Zhou

[permalink] [raw]
Subject: [GIT PULL] percpu changes for v5.12-rc7

Hi Linus,

This pull request contains a fix for sporadically failing atomic percpu
allocations. I only caught it recently while I was reviewing a new
series [1] and simultaneously saw reports by btrfs in xfstests [2] and
[3].

In v5.9, memcg accounting was extended to percpu done by adding a second
type of chunk. I missed an interaction with the free page float count
used to ensure we can support atomic allocations. If 1 type of chunk has
no free pages, but the other has enough to satisfy the free page float
requirement, we will not repopulate the free pages for the former type
of chunk. This led to sporadically failing atomic allocations.

[1] https://lore.kernel.org/linux-mm/[email protected]/
[2] https://lore.kernel.org/linux-mm/[email protected]/
[3] https://lore.kernel.org/linux-mm/CAL3q7H5RNBjCi708GH7jnczAOe0BLnacT9C+OBgA-Dx9jhB6SQ@mail.gmail.com/

Thanks,
Dennis

The following changes since commit e49d033bddf5b565044e2abe4241353959bc9120:

Linux 5.12-rc6 (2021-04-04 14:15:36 -0700)

are available in the Git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/dennis/percpu.git for-5.12-fixes

for you to fetch changes up to 0760fa3d8f7fceeea508b98899f1c826e10ffe78:

percpu: make pcpu_nr_empty_pop_pages per chunk type (2021-04-09 13:58:38 +0000)

----------------------------------------------------------------
Roman Gushchin (1):
percpu: make pcpu_nr_empty_pop_pages per chunk type

mm/percpu-internal.h | 2 +-
mm/percpu-stats.c | 9 +++++++--
mm/percpu.c | 14 +++++++-------
3 files changed, 15 insertions(+), 10 deletions(-)


2021-04-10 20:18:21

by pr-tracker-bot

[permalink] [raw]
Subject: Re: [GIT PULL] percpu changes for v5.12-rc7

The pull request you sent on Sat, 10 Apr 2021 18:22:35 +0000:

> git://git.kernel.org/pub/scm/linux/kernel/git/dennis/percpu.git for-5.12-fixes

has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/52e44129fba5cfc4e351fdb5e45849afc74d9a53

Thank you!

--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/prtracker.html