# git rev-parse -q --verify 52e44129fba5cfc4e351fdb5e45849afc74d9a53^{commit} 52e44129fba5cfc4e351fdb5e45849afc74d9a53 already have revision, skipping fetch # git checkout -q -f -B kisskb 52e44129fba5cfc4e351fdb5e45849afc74d9a53 # git clean -qxdf # < git log -1 # commit 52e44129fba5cfc4e351fdb5e45849afc74d9a53 # Merge: efc2da9241e6 0760fa3d8f7f # Author: Linus Torvalds # Date: Sat Apr 10 12:51:12 2021 -0700 # # Merge branch 'for-5.12-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/dennis/percpu # # Pull percpu fix from Dennis Zhou: # "This 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 one 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 the sporadically failing atomic # allocations" # # Link: https://lore.kernel.org/linux-mm/20210324190626.564297-1-guro@fb.com/ [1] # Link: https://lore.kernel.org/linux-mm/20210401185158.3275.409509F4@e16-tech.com/ [2] # Link: https://lore.kernel.org/linux-mm/CAL3q7H5RNBjCi708GH7jnczAOe0BLnacT9C+OBgA-Dx9jhB6SQ@mail.gmail.com/ [3] # # * 'for-5.12-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/dennis/percpu: # percpu: make pcpu_nr_empty_pop_pages per chunk type # < /opt/cross/kisskb/korg/gcc-4.9.4-nolibc/arm-linux-gnueabi/bin/arm-linux-gnueabi-gcc --version # < /opt/cross/kisskb/korg/gcc-4.9.4-nolibc/arm-linux-gnueabi/bin/arm-linux-gnueabi-ld --version # < git log --format=%s --max-count=1 52e44129fba5cfc4e351fdb5e45849afc74d9a53 # < make -s -j 48 ARCH=arm O=/kisskb/build/linus_lubbock_defconfig_arm-gcc4.9 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-4.9.4-nolibc/arm-linux-gnueabi/bin/arm-linux-gnueabi- lubbock_defconfig # < make -s -j 48 ARCH=arm O=/kisskb/build/linus_lubbock_defconfig_arm-gcc4.9 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-4.9.4-nolibc/arm-linux-gnueabi/bin/arm-linux-gnueabi- help # make -s -j 48 ARCH=arm O=/kisskb/build/linus_lubbock_defconfig_arm-gcc4.9 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-4.9.4-nolibc/arm-linux-gnueabi/bin/arm-linux-gnueabi- olddefconfig # make -s -j 48 ARCH=arm O=/kisskb/build/linus_lubbock_defconfig_arm-gcc4.9 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-4.9.4-nolibc/arm-linux-gnueabi/bin/arm-linux-gnueabi- Completed OK # rm -rf /kisskb/build/linus_lubbock_defconfig_arm-gcc4.9 # Build took: 0:00:46.315576