Re: [PATCHSET v4 0/8] Make background writeback not suck

From: Jens Axboe
Date: Tue Apr 26 2016 - 11:07:51 EST


On 04/26/2016 01:04 AM, Sedat Dilek wrote:
Hi Jens,

I am testing current linux-block.git#wb-buf-throttle on top of Linux
v4.6-rc5 here on my Ubuntu/precise AMD64.
( Was installed as a WUBI "test" system - "testing" since April 2012 :-) .)

Great! Thanks for testing.

Here are some numbers:

# df -T | egrep 'sda|loop'
/dev/sda2 fuseblk 465546236 210981868 254564368 46% /host
/dev/loop0 ext4 17753424 15586612 1241936 93% /

# egrep 'sda|loop|ext4' /etc/fstab
/host/ubuntu/disks/root.disk / ext4
loop,errors=remount-ro 0 1
/host/ubuntu/disks/swap.disk none swap loop,sw
0 0

What kind of device is sda?

( Not sure why I cannot do a find on /sys/block/ .)

Probably the symlinks that confuse it.

# find /sys/devices/ -name '*wb_stat*' | egrep 'loop0|sda'
/sys/devices/pci0000:00/0000:00:1f.2/ata1/host0/target0:0:0/0:0:0:0/block/sda/queue/wb_stats
/sys/devices/virtual/block/loop0/queue/wb_stats

# find /sys/devices/ -name '*wb_lat*' | egrep 'loop0|sda'
/sys/devices/pci0000:00/0000:00:1f.2/ata1/host0/target0:0:0/0:0:0:0/block/sda/queue/wb_lat_usec
/sys/devices/virtual/block/loop0/queue/wb_lat_usec

# cat /sys/devices/pci0000:00/0000:00:1f.2/ata1/host0/target0:0:0/0:0:0:0/block/sda/queue/wb_stats
/sys/devices/pci0000:00/0000:00:1f.2/ata1/host0/target0:0:0/0:0:0:0/block/sda/queue/wb_lat_usec
background=8, normal=16, max=31, inflight=0, wait=0, bdp_wait=0
75000

# cat /sys/devices/virtual/block/loop0/queue/wb_stats
/sys/devices/virtual/block/loop0/queue/wb_lat_usec
background=16, normal=32, max=64, inflight=0, wait=0, bdp_wait=0
75000

Questions...

Planning a v5?

Yes, I'll post a v5 today or something like that. Functionally not a huge amount of changes, but it does have a few important bug fixes that make it perform better. The biggest part is making it generic, so it can be plugged into NFS as well, for instance.

Will this go to Linux v4.7 or later?
How should someone test?

Probably a bit too tight for 4.7, but one can always hope. 4.8 is probably a more realistic target.

Testing is really having some readers while you have writes going on. One example is doing something that reads while you have a dd writing to your device. Or interactive feel while installing a lot of packages, which tends to generate a ton of writes as well.

If you are so inclined, I'd encourage you to test the v5 I'll post later today. I've run that through the paces on various devices.

Documentation...

Can you add some more docs about getting infos (see above cat#s etc.)
below Documentation/ directory?
( Talking about the stuff you have embedded in the commit-messages. )

Yeah, I'll do that, it is a bit light right now. It'll be in the next release.


--
Jens Axboe