Re: Partial direct-io loop regression in 5.17-rc

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 2/4/22 2:22 AM, Milan Broz wrote:
> Hi Jens,
> 
> It seems that there is a regression in direct-io over loop for partial
> direct-io reads (or perhaps even for other situations).
> 
> If I run this code (loop over 6M file, dd direct-io read with 4M blocks)
> 
> IMG=tst.img
> LOOP=/dev/loop66
> 
> truncate -s 6M $IMG
> losetup $LOOP $IMG
> dd if=$LOOP of=/dev/null bs=4M iflag=direct
> losetup -d $LOOP
> 
> 
> on older kernel (<=5.16) it reads the whole file
>    6291456 bytes (6.3 MB, 6.0 MiB) copied, 0.201591 s, 31.2 MB/s
> 
> 
> while on 5.17-rc (tested on today/s Linus' git) it reads only the full blocks:
>    4194304 bytes (4.2 MB, 4.0 MiB) copied, 0.201904 s, 20.8 MB/s
> 
> No error reported, exit code is 0.

Can you try:

https://git.kernel.dk/cgit/linux-block/commit/?h=block-5.17&id=3e1f941dd9f33776b3df4e30f741fe445ff773f3

-- 
Jens Axboe




[Index of Archives]     [Linux RAID]     [Linux SCSI]     [Linux ATA RAID]     [IDE]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Device Mapper]

  Powered by Linux