[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20090816083434.2ce69859@infradead.org>
Date: Sun, 16 Aug 2009 08:34:34 -0700
From: Arjan van de Ven <arjan@...radead.org>
To: Alan Cox <alan@...rguk.ukuu.org.uk>
Cc: James Bottomley <James.Bottomley@...e.de>, Mark Lord <liml@....ca>,
Chris Worley <worleys@...il.com>,
Matthew Wilcox <matthew@....cx>,
Bryan Donlan <bdonlan@...il.com>, david@...g.hm,
Greg Freemyer <greg.freemyer@...il.com>,
Markus Trippelsdorf <markus@...ppelsdorf.de>,
Matthew Wilcox <willy@...ux.intel.com>,
Hugh Dickins <hugh.dickins@...cali.co.uk>,
Nitin Gupta <ngupta@...are.org>, Ingo Molnar <mingo@...e.hu>,
Peter Zijlstra <peterz@...radead.org>,
linux-kernel@...r.kernel.org, linux-mm@...ck.org,
linux-scsi@...r.kernel.org, linux-ide@...r.kernel.org,
Linux RAID <linux-raid@...r.kernel.org>
Subject: Re: Discard support (was Re: [PATCH] swap: send callback when swap
slot is freed)
On Sun, 16 Aug 2009 15:05:30 +0100
Alan Cox <alan@...rguk.ukuu.org.uk> wrote:
> On Sat, 15 Aug 2009 08:55:17 -0500
> James Bottomley <James.Bottomley@...e.de> wrote:
>
> > 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.
>
> Flush barriers are nightmare for more than enterprise. You drive
> basically goes for a hike for a bit which trashes interactivity as
> well. If the device can't do trim and the like without a drain I
> don't see much point doing it at all, except maybe to wait for idle
> devices and run a filesystem managed background 'strimmer' thread to
> just weed out now idle blocks that have stayed idle - eg by adding an
> inode of all the deleted untrimmed blocks and giving it an irregular
> empty ?
>
trim is mostly for ssd's though, and those tend to not have the "goes
for a hike" behavior as much......
I wonder if it's worse to batch stuff up, because then the trim itself
gets bigger and might take longer.....
--
Arjan van de Ven Intel Open Source Technology Centre
For development, discussion and tips for power savings,
visit http://www.lesswatts.org
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists