Files
Centos-kernel-stream-10/io_uring
Ming Lei 4d8a240cb4 block: enable per-cpu bio cache by default
JIRA: https://issues.redhat.com/browse/RHEL-144763

commit 48f22f80938d94c34319f90674de6102ca37eabc
Author: Fengnan Chang <changfengnan@bytedance.com>
Date:   Fri Nov 14 17:21:49 2025 +0800

    block: enable per-cpu bio cache by default

    Since after commit 12e4e8c7ab ("io_uring/rw: enable bio caches for
    IRQ rw"), bio_put is safe for task and irq context, bio_alloc_bioset is
    safe for task context and no one calls in irq context, so we can enable
    per cpu bio cache by default.

    Benchmarked with t/io_uring and ext4+nvme:
    taskset -c 6 /root/fio/t/io_uring  -p0 -d128 -b4096 -s1 -c1 -F1 -B1 -R1
    -X1 -n1 -P1  /mnt/testfile
    base IOPS is 562K, patch IOPS is 574K. The CPU usage of bio_alloc_bioset
    decrease from 1.42% to 1.22%.

    The worst case is allocate bio in CPU A but free in CPU B, still use
    t/io_uring and ext4+nvme:
    base IOPS is 648K, patch IOPS is 647K.

    Also use fio test ext4/xfs with libaio/sync/io_uring on null_blk and
    nvme, no obvious performance regression.

    Signed-off-by: Fengnan Chang <changfengnan@bytedance.com>
    Signed-off-by: Jens Axboe <axboe@kernel.dk>

Signed-off-by: Ming Lei <ming.lei@redhat.com>
2026-02-28 19:32:41 +08:00
..
2025-08-26 12:16:47 +08:00
2025-08-26 12:16:51 +08:00
2025-08-26 12:17:00 +08:00
2025-08-26 12:16:56 +08:00
2026-01-16 06:11:53 -05:00
2025-05-21 18:17:33 +08:00