News: 0001617914

  ARM Give a man a fire and he's warm for a day, but set fire to him and he's warm for the rest of his life (Terry Pratchett, Jingo)

Linux 7.0 Slab Fix On The Way For A "Severe Performance Regression"

([Linux Kernel] 3 Hours Ago Linux 7.0 Slab Allocator)


Sent out today was this week's batch of Slab allocator fixes for the [1]Linux 7.0 development kernel. Making this pull notable is fixing a "severe performance regression" with a ~64% performance drop having been noted in late February.

Today's slab fixes pull has a fix for a "severe performance regression" stemming from unnecessary sheaf refill restrictions exposed by the mempool allocatioan strategy. The regression was introduced to the mainline Linux kernel last month as part of the new slab material for the Linux 7.0 merge window.

Ming Lei of Red Hat is the one that [2]reported the regression and noted:

"The SLUB "sheaves" series merged via 815c8e35511d ("Merge branch 'slab/for-7.0/sheaves' into slab/for-next") introduces a severe performance regression for workloads with persistent cross-CPU alloc/free patterns. ublk null target benchmark IOPS drops significantly compared to v6.19: from ~36M IOPS to ~13M IOPS (~64% drop).

Bisecting within the sheaves series is blocked by a kernel panic at 17c38c88294d ("slab: remove cpu (partial) slabs usage from allocation paths"), so the exact first bad commit could not be identified."

SUSE Linux engineer Vlastimil Babka devised a [3]fix to allow sheaf refill if blocking is not allowed. This doesn't fully resolve the performance regression but another patch is expected to handle the possibility of memory-less nodes.

That fix is pending now via [4]this pull request and should be merged ahead of Sunday's Linux 7.0-rc3 kernel release.



[1] https://www.phoronix.com/search/Linux+7.0

[2] https://lore.kernel.org/all/aZ0SbIqaIkwoW2mB@fedora/

[3] https://lore.kernel.org/lkml/20260302095536.34062-2-vbabka@kernel.org/

[4] https://lore.kernel.org/lkml/086138f7-052e-402d-ab36-b40ca4428662@kernel.org/



program, n.:
A magic spell cast over a computer allowing it to turn one's input
into error messages. tr.v. To engage in a pastime similar to banging
one's head against a wall, but with fewer opportunities for reward.