mirror of https://github.com/torvalds/linux.git
bcache: remove unnecessary select MIN_HEAP
After reverting the transition to the generic min heap library, bcache no longer depends on MIN_HEAP. The select entry can be removed to reduce code size and shrink the kernel's attack surface. This change effectively reverts the bcache-related part of commit92a8b224b8("lib/min_heap: introduce non-inline versions of min heap API functions"). This is part of a series of changes to address a performance regression caused by the use of the generic min_heap implementation. As reported by Robert, bcache now suffers from latency spikes, with P100 (max) latency increasing from 600 ms to 2.4 seconds every 5 minutes. These regressions degrade bcache's effectiveness as a low-latency cache layer and lead to frequent timeouts and application stalls in production environments. Link: https://lore.kernel.org/lkml/CAJhEC05+0S69z+3+FB2Cd0hD+pCRyWTKLEOsc8BOmH73p1m+KQ@mail.gmail.com Link: https://lkml.kernel.org/r/20250614202353.1632957-4-visitorckw@gmail.com Fixes:866898efbb("bcache: remove heap-related macros and switch to generic min_heap") Fixes:92a8b224b8("lib/min_heap: introduce non-inline versions of min heap API functions") Signed-off-by: Kuan-Wei Chiu <visitorckw@gmail.com> Reported-by: Robert Pang <robertpang@google.com> Closes: https://lore.kernel.org/linux-bcache/CAJhEC06F_AtrPgw2-7CvCqZgeStgCtitbD-ryuPpXQA-JG5XXw@mail.gmail.com Acked-by: Coly Li <colyli@kernel.org> Cc: Ching-Chun (Jim) Huang <jserv@ccns.ncku.edu.tw> Cc: Kent Overstreet <kent.overstreet@linux.dev> Cc: <stable@vger.kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
This commit is contained in:
parent
48fd7ebe00
commit
95b2e31e17
|
|
@ -5,7 +5,6 @@ config BCACHE
|
||||||
select BLOCK_HOLDER_DEPRECATED if SYSFS
|
select BLOCK_HOLDER_DEPRECATED if SYSFS
|
||||||
select CRC64
|
select CRC64
|
||||||
select CLOSURES
|
select CLOSURES
|
||||||
select MIN_HEAP
|
|
||||||
help
|
help
|
||||||
Allows a block device to be used as cache for other devices; uses
|
Allows a block device to be used as cache for other devices; uses
|
||||||
a btree for indexing and the layout is optimized for SSDs.
|
a btree for indexing and the layout is optimized for SSDs.
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue