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

Re: [dm-devel] Ext4 and xfs problems in dm-thin on allocation and discard



On Tue, Jun 19 2012 at  9:25am -0400,
Lukáš Czerner <lczerner redhat com> wrote:

> On Tue, 19 Jun 2012, Mike Snitzer wrote:
> 
> > Date: Tue, 19 Jun 2012 09:16:49 -0400
> > From: Mike Snitzer <snitzer redhat com>
> > To: Lukáš Czerner <lczerner redhat com>
> > Cc: Dave Chinner <david fromorbit com>, Spelic <spelic shiftmail org>,
> >     device-mapper development <dm-devel redhat com>,
> >     linux-ext4 vger kernel org, xfs oss sgi com
> > Subject: Re: Ext4 and xfs problems in dm-thin on allocation and discard
> > 
> > On Tue, Jun 19 2012 at  2:32am -0400,
> > Lukáš Czerner <lczerner redhat com> wrote:
> >
> > > So do I understand correctly that even though the discard came
> > > through and thinp took advantage of it it still returns EOPNOTSUPP ?
> > 
> > No, not correct.  Why are you assuming this?  I must be missing
> > something from this discussion that led you there.
> 
> Those two paragraphs led me to that conclusion:
> 
>   That message says the underlying device doesn't support discards
>   (because it is an MD device).  But the thinp device still has discards
>   enabled -- it just won't pass the discards down to the underlying data
>   device.
> 
>   The discards still inform the thin-pool that the corresponding extents
>   are no longer allocated.
> 
> so I am a bit confused now. Why the dm-thin returned EOPNOTSUPP then
> ? Is that because it has been configured to ignore_discard, or it
> actually takes advantage of the discard but underlying device does
> not support it (and no_discard_passdown is not set) so it return
> EOPNOTSUPP ?
> 
> > 
> > > This seems rather suboptimal. IIRC there was a discussion to add an
> > > option to enable/disable sending discard in thinp target down
> > > to the device.
> > > 
> > > So maybe it might be a bit smarter than that and actually
> > > enable/disable discard pass through depending on the underlying
> > > support, so we do not blindly send discard down to the device even
> > > though it does not support it.
> > 
> > Yes, that is what we did.
> > 
> > Discards are enabled my default (including discard passdown), but if the
> > underlying data device doesn't support discards then the discards will
> > not be passed down.
> > 
> > And here are the feature controls that can be provided when loading the
> > thin-pool's DM table:
> > 
> > ignore_discard: disable discard
> > no_discard_passdown: don't pass discards down to the data device
> > 
> > -EOPNOTSUPP is only ever returned if 'ignore_discard' is provided.
> 
> Ok, so in this case 'ignore_discard' has been configured ?

I don't recall Spelic saying anything about EOPNOTSUPP.  So what has
made you zero in on an -EOPNOTSUPP return (which should not be
happening)?


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