On Fri, Aug 21, 2020 at 10:15:33AM +0530, Ritesh Harjani wrote: > Please correct me here, but as I see, bio has only these two limits > which it checks for adding page to bio. It doesn't check for limits > of /sys/block/<dev>/queue/* no? I guess then it could be checked > by block layer below b4 submitting the bio?
The bio does not, but the blk-mq code will split the bios when mapping it to requests, take a look at blk_mq_submit_bio and __blk_queue_split. But while the default limits are quite low, they can be increased siginificantly, which tends to help with performance and is often also done by scripts shipped by the distributions. > This issue was first observed while running a fio run on a system with > huge memory. But then here is an easy way we figured out to trigger the > issue almost everytime with loop device on my VM setup. I have provided > all the details on this below. Can you wire this up for xfstests?