root@srv1:~# grep data /proc/mounts
/dev/md124 /mnt/data ext4
rw,noatime,nodiratime,user_xattr,acl,barrier=1,data=ordered 0 0

root@srv1:~# grep md124 /proc/mdstat
md124 : active raid1 sdb4[0] sda4[2]

root@srv1:~# smartctl -i /dev/sda|grep odel
Device Model:     ST1000DM003-9YN162

root@srv1:~# smartctl -i /dev/sdb|grep odel
Device Model:     ST1000DM003-9YN162

root@srv1:~# truncate -s 1G /mnt/data/tmp/deleteme

root@srv1:~# losetup -f /mnt/data/tmp/deleteme

root@srv1:~# parted /dev/loop0 'mktable msdos'; parted /dev/loop0 'mkpart p
0% 100%'

root@srv1:~# kpartx -a /dev/loop0

root@srv1:~# dd if=/dev/zero |pv -rab|dd of=/dev/mapper/loop0p1
^C46MB [43.6MB/s] [44.6MB/s]
946836+0 records in
946835+0 records out
484779520 bytes (485 MB) copied, 10.6719 s, 45.4 MB/s

root@srv1:~# dd if=/dev/zero bs=64M  |pv -rab|dd bs=64M
of=/dev/mapper/loop0p1 conv=fsync oflag=direct,sync,nonblock
dd: warning: partial read (131072 bytes); suggest iflag=fullblock
^C59MB [1.86MB/s] [1.25MB/s]B/s]
0+478 records in
0+478 records out
62652416 bytes (63 MB) copied, 47.4236 s, 1.3 MB/s


[atop fara sync]
LVM |       loop0p1  |  busy     33%  |  read   10227  |  write  18668  |
 MBw/s  72.92  |  avio 0.01 ms  |

[atop cu sync]
LVM |       loop0p1  |  busy     97%  |  read       0  |  write    660  |
 MBw/s   2.50  |  avio 1.48 ms  |

[nmon fara sync]
|DiskName Busy    Read    Write       Xfers   Size  Peak%  Peak-RW
 InFlight                            |
|dm-0      29%  44318.0  64316.8KB/s 27158.7   4.0KB  101%  120569.4KB/s
0                              |

[nmon cu sync]
|DiskName Busy    Read    Write       Xfers   Size  Peak%  Peak-RW
 InFlight                            |
|dm-0      99%      0.0   1534.5KB/s  395.6   3.9KB  101%    2174.2KB/s   1
                              |

daca repet testele cu un loop peste fisier normal (NU sparse!), nu se mai
observa citiri din loop0p1 atunci cand scriu in el cu dd.
de asemenea daca fac testele direct pe fisier (fie sparse, fie normal), nu
se observa decat scrieri.

imi poate explica cineva cu capul ceva mai mare decat al meu care este
cauza pentru care atunci cand sub loop e un fisier sparse, scrierile cu dd
pe acel blockdevice sunt insotite de citiri?
_______________________________________________
RLUG mailing list
RLUG@lists.lug.ro
http://lists.lug.ro/mailman/listinfo/rlug

Raspunde prin e-mail lui