From: Dmitry Monakhov <dmonakhov@openvz.org>
To: Ted Ts'o <tytso@mit.edu>
Cc: Greg Freemyer <greg.freemyer@gmail.com>,
Lukas Czerner <lczerner@redhat.com>,
linux-ext4@vger.kernel.org, jmoyer@redhat.com,
rwheeler@redhat.com, eshishki@redhat.com, sandeen@redhat.com,
jack@suse.cz, Mark Lord <kernel@teksavvy.com>
Subject: Re: [PATCH 1/3] Add ioctl FITRIM.
Date: Thu, 05 Aug 2010 10:51:22 +0400 [thread overview]
Message-ID: <87sk2tk0wl.fsf@dmon-lap.sw.ru> (raw)
In-Reply-To: 20100805002839.GD2901@thunk.org
Ted Ts'o <tytso@mit.edu> writes:
> On Wed, Aug 04, 2010 at 11:26:56AM -0400, Greg Freemyer wrote:
>>
>> Since the proposed patch is not aggregating discards into multiple
>> ranges per ATA command, I thought some of the non-optimized devices
>> would take minutes / hours?
>>
>> If true, a way to control the progress from userspace is important.
>>
>> If in general it is only going to take a few seconds for a full FITRIM
>> to run, it is much less important, but I suppose the the RT project
>> might find even that problematic.
Few second may not being true, We always have to think about crazy
user, and crazy fs-layouts.
My SSD is able to process 8*10^3 requests per second
So in worst case( where 1k fs block are bysy like this 010101010101)
it can process about 10^3/s * 2*1Kb = 16Mb/s
Which is no good.
>
> Even if it without the RT project, if disk activity is slowed or
> completely stopped for a few seconds, I can think of plenty of
> workloads where this would be totally unacceptable. Suppose you are
> running a web site; it doesn't really matter whether it is at Google,
> Facebook, Twitter, etc. If this means that one or more web pages get
> stalled by "a few seconds" while the FITRIM is going on, this is
> generally not considered acceptable. Even if it slows down the server
> by 30-50%, for some sites this would also be quite unacceptable.
>
> This is a hard problem to solve, though, especially if there is an
> insistence to solve it in a fs-independent fashion. I could imagine
> doing this at work, by doing things one block group at a time, and
> then I could measure, for our specific hardware, how badly disk
> performance would get hit, and for how long, and then the userspace
> daemon could control how many block groups to do per unit time.
> But this would be of necessity ext2/3/4 specific....
>
> So I'm not sure what to suggest here. Maybe the answer is we can have
> a fs-independent ioctl for desktop workloads, and one which gives more
> fine-grained control for those who need it? That seems ugly, but it
> might be the best compromise.
Why do we have to invent a wheel again?
We already have BLKDISCARD which has following arguments:
uint64_t range[2]
So IMHO it is reasonable that FITRIM should have following arguments
uint64_t start, uint64_t len, uint64_t minlen.
No problems with compat, no problems with interactivity.
User who does not care about interactivity may just call
ioctl(fd, FITRIM, 0, LLONG_MAX, 0),
>
> - Ted
> --
> To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
next prev parent reply other threads:[~2010-08-05 6:51 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-08-04 13:44 [PATCH 1/3] Add ioctl FITRIM Lukas Czerner
2010-08-04 13:44 ` [PATCH 2/3] Add batched discard support for ext3 Lukas Czerner
2010-08-04 14:03 ` Jan Kara
2010-08-04 14:32 ` Lukas Czerner
2010-08-04 19:39 ` Andreas Dilger
2010-08-05 14:00 ` Lukas Czerner
2010-08-04 13:44 ` [PATCH 3/3] Add batched discard support for ext4 Lukas Czerner
2010-08-04 14:17 ` Jan Kara
2010-08-04 14:57 ` [PATCH 1/3] Add ioctl FITRIM Dmitry Monakhov
2010-08-04 15:13 ` Lukas Czerner
2010-08-04 15:26 ` Greg Freemyer
2010-08-05 0:28 ` Ted Ts'o
2010-08-05 6:51 ` Dmitry Monakhov [this message]
2010-08-05 15:47 ` Andreas Dilger
2010-08-05 7:00 ` Dmitry Monakhov
2010-08-05 8:36 ` Lukas Czerner
-- strict thread matches above, loose matches on Subject: below --
2010-09-24 15:35 [PATCH 0/3 v. 8] Ext3/Ext4 Batched discard support Lukas Czerner
2010-09-24 15:35 ` [PATCH 1/3] Add ioctl FITRIM Lukas Czerner
2010-09-24 17:03 ` Andreas Dilger
2010-09-27 9:20 ` Lukas Czerner
2010-08-10 14:19 [PATCH 0/3 ver. 7] Ext3/Ext4 Batched discard support Lukas Czerner
2010-08-10 14:19 ` [PATCH 1/3] Add ioctl FITRIM Lukas Czerner
2010-08-06 11:31 [PATCH 0/3] Batched discard support Lukas Czerner
2010-08-06 11:31 ` [PATCH 1/3] Add ioctl FITRIM Lukas Czerner
2010-07-27 12:41 [PATCH 0/3 v3] Batched discard support for Ext3/Ext4 Lukas Czerner
2010-07-27 12:41 ` [PATCH 1/3] Add ioctl FITRIM Lukas Czerner
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87sk2tk0wl.fsf@dmon-lap.sw.ru \
--to=dmonakhov@openvz.org \
--cc=eshishki@redhat.com \
--cc=greg.freemyer@gmail.com \
--cc=jack@suse.cz \
--cc=jmoyer@redhat.com \
--cc=kernel@teksavvy.com \
--cc=lczerner@redhat.com \
--cc=linux-ext4@vger.kernel.org \
--cc=rwheeler@redhat.com \
--cc=sandeen@redhat.com \
--cc=tytso@mit.edu \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.