Re: Discard support (was Re: [PATCH] swap: send callback when swap slot is freed)

James Bottomley
2009-08-15T13:55:30Z

On Sat, 2009-08-15 at 09:22 -0400, Mark Lord wrote:
> James Bottomley wrote:
> >
> > This means you have to drain the outstanding NCQ commands (stalling the
> > device) before you can send a TRIM. If we do this for every discard,
> > the performance impact will be pretty devastating, hence the need to
> > coalesce. It's nothing really to do with device characteristics, it's
> > an ATA protocol problem.
> ..
>
> I don't think that's really much of an issue -- we already have to do
> that for cache-flushes whenever barriers are enabled. Yes it costs,
> but not too much.

That's not really what the enterprise is saying about flush barriers.
True, not all the performance problems are NCQ queue drain, but for a
steady workload they are significant.

James