[GIT PULL] percpu changes for v5.12-rc7

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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/20210324190626.564297-1-guro@xxxxxx/
[2] https://lore.kernel.org/linux-mm/20210401185158.3275.409509F4@xxxxxxxxxxxx/
[3] https://lore.kernel.org/linux-mm/CAL3q7H5RNBjCi708GH7jnczAOe0BLnacT9C+OBgA-Dx9jhB6SQ@xxxxxxxxxxxxxx/

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(-)




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux