On Tue, Jun 19 2012 at 9:52am -0400,
Spelic <spelic@xxxxxxxxxxxxx> wrote:
> On 06/19/12 15:30, Mike Snitzer wrote:
> >I don't recall Spelic saying anything about EOPNOTSUPP. So what
> >has made you zero in on an -EOPNOTSUPP return (which should not be
> Exactly: I do not know if EOPNOTSUPP is being returned or not.
> If this helps, I have configured dm-thin via lvm2
> LVM version: 2.02.95(2) (2012-03-06)
> Library version: 1.02.74 (2012-03-06)
> Driver version: 4.22.0
> from dmsetup table I only see one option : "skip_block_zeroing", if
> and only if I configure it with -Zn . I do not see anything
> regarding ignore_discard
> vg1-pooltry1-tpool: 0 20971520 thin-pool 252:1 252:2 2048 0 1
> vg1-pooltry1_tdata: 0 20971520 linear 9:20 62922752
> vg1-pooltry1_tmeta: 0 8192 linear 9:20 83894272
> vg1-thinlv1: 0 31457280 thin 252:3 1
> and in dmesg:
> [ 33.685200] device-mapper: thin: Discard unsupported by data
> device (dm-2): Disabling discard passdown.
> [ 33.709586] device-mapper: thin: Discard unsupported by data
> device (dm-6): Disabling discard passdown.
> I do not know what is the mechanism for which xfs cannot unmap
> blocks from dm-thin, but it really can't.
> If anyone has dm-thin installed he can try. This is 100%
> reproducible for me.
I was initially surprised by this considering the thinp-test-suite does
test a compilebench workload against xfs and ext4 using online discard
But I just modified that test to use a thin-pool with 'ignore_discard'
and the test still passed on both ext4 and xfs.
So there is more work needed in the thinp-test-suite to use blktrace
hooks to verify that discards are occuring when the compilebench
generated files are removed.
I'll work through that and report back.