From: baiguo <baiguo@xxxxxxxxxx> When ftrace is not enabled and bio is not OK, the system cannot actively record which disk is abnormal. Add a message record to bio_endio. Signed-off-by: baiguo <baiguo@xxxxxxxxxx> --- block/bio.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/block/bio.c b/block/bio.c index c4053d496..fb07589c8 100644 --- a/block/bio.c +++ b/block/bio.c @@ -1617,6 +1617,11 @@ void bio_endio(struct bio *bio) bio_clear_flag(bio, BIO_TRACE_COMPLETION); } + if (bio->bi_status && bio->bi_bdev) + printk(KERN_ERR "bio: %s status is %d, disk[%d:%d]\n",\ + __func__, bio->bi_status, bio->bi_bdev->bd_disk->major,\ + bio->bi_bdev->bd_disk->first_minor); + /* * Need to have a real endio function for chained bios, otherwise * various corner cases will break (like stacking block devices that -- 2.33.0