]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
block: rate-limit capacity change info log
authorLi Chen <chenl311@chinatelecom.cn>
Mon, 17 Nov 2025 05:34:07 +0000 (13:34 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 8 Jan 2026 09:14:14 +0000 (10:14 +0100)
commit 3179a5f7f86bcc3acd5d6fb2a29f891ef5615852 upstream.

loop devices under heavy stress-ng loop streessor can trigger many
capacity change events in a short time. Each event prints an info
message from set_capacity_and_notify(), flooding the console and
contributing to soft lockups on slow consoles.

Switch the printk in set_capacity_and_notify() to
pr_info_ratelimited() so frequent capacity changes do not spam
the log while still reporting occasional changes.

Cc: stable@vger.kernel.org
Signed-off-by: Li Chen <chenl311@chinatelecom.cn>
Reviewed-by: Chaitanya Kulkarni <kch@nvidia.com>
Reviewed-by: Bart Van Assche <bvanassche@acm.org>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
block/genhd.c

index 99344f53c7897531ed020307aae8f2524e8205c3..22fea4eb4241929acc337c540f99b5402efd0b38 100644 (file)
@@ -83,7 +83,7 @@ bool set_capacity_and_notify(struct gendisk *disk, sector_t size)
            (disk->flags & GENHD_FL_HIDDEN))
                return false;
 
-       pr_info("%s: detected capacity change from %lld to %lld\n",
+       pr_info_ratelimited("%s: detected capacity change from %lld to %lld\n",
                disk->disk_name, capacity, size);
 
        /*