On 1/28/19 5:57 PM, Song Liu wrote:
On Mon, Jan 28, 2019 at 7:00 AM Michal Soltys <soltys@xxxxxxxx> wrote:
On 1/28/19 1:07 PM, Michal Soltys wrote:
8,0 1 269804 53.031027682 0 C D 5020472 + 1024 [0]
8,0 1 269805 53.040992885 0 C D 5021496 + 1024 [0]
8,0 1 269806 53.041155059 7185 A D 5021496 + 8 <- (9,10) 0
The time length of the whole operation actually fits pretty well - with
32gb component disks, if each merged discard (up to 512k) incurs 10ms
penalty, that formally totals to 640s or so.
How about raid10 cases? Does it merge discard to a much bigger size?
Actually the results are quite weird (and blkdiscard on it also took
~11min, though it seems for different reasons).
Nominally there were a lot merges up to 64m, but there were also a lot
of unmereged single sector (or +2, +3 - up to +15) ones.
9,10 5 1 0.000000000 1270 Q D 0 + 8388607 [blkdiscard]
9,10 5 2 0.000003900 1270 X D 0 / 1024 [blkdiscard]
9,10 6 0 0.015422627 0 m N md md_update_sb
8,48 6 1 0.015431230 1246 A FWFS 2056 + 1 <- (8,49) 8
8,48 6 2 0.015434083 1246 Q FWFS 2056 + 1 [md10_raid10]
8,48 6 3 0.015440813 1246 G FWFS 2056 + 1 [md10_raid10]
8,32 6 1 0.015491020 1246 A FWFS 2056 + 1 <- (8,33) 8
8,32 6 2 0.015492220 1246 Q FWFS 2056 + 1 [md10_raid10]
8,32 6 3 0.015494157 1246 G FWFS 2056 + 1 [md10_raid10]
8,16 6 1 0.015510453 1246 A FWFS 2056 + 1 <- (8,17) 8
8,16 6 2 0.015511639 1246 Q FWFS 2056 + 1 [md10_raid10]
8,16 6 3 0.015513013 1246 G FWFS 2056 + 1 [md10_raid10]
8,0 6 1 0.015527545 1246 A FWFS 2056 + 1 <- (8,1) 8
8,0 6 2 0.015528682 1246 Q FWFS 2056 + 1 [md10_raid10]
8,0 6 3 0.015529912 1246 G FWFS 2056 + 1 [md10_raid10]
8,48 6 4 0.020176392 357 D WFS 2056 + 1 [kworker/6:1H]
8,32 6 4 0.020187961 357 D WFS 2056 + 1 [kworker/6:1H]
8,16 6 4 0.020191288 357 D WFS 2056 + 1 [kworker/6:1H]
8,0 6 4 0.020194631 357 D WFS 2056 + 1 [kworker/6:1H]
8,48 6 5 0.020864661 0 C WFS 2056 + 1 [0]
8,48 6 6 0.020869060 0 C WFS 2056 [0]
8,32 6 5 0.020877850 0 C WFS 2056 + 1 [0]
8,32 6 6 0.020879070 0 C WFS 2056 [0]
8,16 6 5 0.020882433 0 C WFS 2056 + 1 [0]
8,16 6 6 0.020883503 0 C WFS 2056 [0]
8,0 6 5 0.020886799 0 C WFS 2056 + 1 [0]
8,0 6 6 0.020887866 0 C WFS 2056 [0]
......
8,32 6 14196 0.888983391 1246 I D 4527103 + 1 [md10_raid10]
8,32 6 14197 0.888983593 1246 I D 4528127 + 1 [md10_raid10]
8,48 6 14195 0.888983911 1246 UT N [md10_raid10] 2
8,48 6 14196 0.888984097 1246 I D 4527103 + 1 [md10_raid10]
8,48 6 14197 0.888984292 1246 I D 4528127 + 1 [md10_raid10]
8,0 6 14194 0.888986085 357 D D 4528127 + 1 [kworker/6:1H]
8,16 6 14194 0.888988080 357 D D 4528127 + 1 [kworker/6:1H]
8,32 6 14198 0.888989355 357 D D 4527103 + 1 [kworker/6:1H]
8,32 6 14199 0.888991307 357 D D 4528127 + 1 [kworker/6:1H]
8,48 6 14198 0.888992968 357 D D 4527103 + 1 [kworker/6:1H]
8,48 6 14199 0.888994184 357 D D 4528127 + 1 [kworker/6:1H]
8,48 6 14200 0.889180192 0 C D 4524031 + 1 [0]
8,32 6 14200 0.889247308 0 C D 4524031 + 1 [0]
8,32 6 14201 0.889552320 0 C D 4525055 + 1 [0]
8,0 6 14195 0.979590734 0 C D 4523007 + 1 [0]
8,16 6 14195 0.979615776 0 C D 4525055 + 1 [0]
8,48 6 14201 0.979619076 0 C D 4525055 + 1 [0]
8,0 6 14196 0.979927964 0 C D 4524031 + 1 [0]
8,16 6 14196 0.979940133 0 C D 4526079 + 1 [0]
8,48 6 14202 0.979942576 0 C D 4526079 + 1 [0]
8,0 6 14197 0.980256117 0 C D 4525055 + 1 [0]
8,16 6 14197 0.980288566 0 C D 4527103 + 1 [0]
8,48 6 14203 0.980290462 0 C D 4527103 + 1 [0]
8,0 6 14198 0.980300545 1246 G D 4529151 + 1 [md10_raid10]
8,0 6 14199 0.980302563 1246 P N [md10_raid10]
8,16 6 14198 0.980304031 1246 A D 4529151 + 1 <- (8,17)
4527103
8,16 6 14199 0.980304969 1246 Q D 4529151 + 1 [md10_raid10]
8,16 6 14200 0.980306587 1246 G D 4529151 + 1 [md10_raid10]
8,16 6 14201 0.980307169 1246 P N [md10_raid10]
In comparison, mkfs.ext -E discard worked fine in 7.2s or so. Pretty
much only 64m merges there.
Traces:
blkdiscard:
https://drive.google.com/open?id=1n5R1prcGxcyIW1SZ-HQ472nbVymK5snR
mkfs -E discard:
https://drive.google.com/open?id=1T2Nomdzvqp5VWVpSmT60DVItbBXENIbc