From: Mike Waychison <mikew@google.com>
To: Valerie Henson <val@nmt.edu>
Cc: Andrew Morton <akpm@linux-foundation.org>,
Theodore Tso <tytso@mit.edu>,
Andreas Dilger <adilger@clusterfs.com>,
Sreenivasa Busam <sreenivasac@google.com>,
"linux-ext4@vger.kernel.org" <linux-ext4@vger.kernel.org>,
Mingming Cao <cmm@us.ibm.com>
Subject: Re: fallocate support for bitmap-based files
Date: Fri, 06 Jul 2007 14:15:44 -0700 [thread overview]
Message-ID: <468EB100.2040109@google.com> (raw)
In-Reply-To: <20070704231127.GA3854@rainbow>
Valerie Henson wrote:
> On Fri, Jun 29, 2007 at 06:07:25PM -0400, Mike Waychison wrote:
>> Relying on (a tweaked) reservations code is also somewhat limitting at
>> this stage given that reservations are lost on close(fd). Unless we
>> change the lifetime of the reservations (maybe for the lifetime of the
>> in-core inode?), crank up the reservation sizes and deal with the
>> overcommit issues, I can't think of any better way at this time to deal
>> with the problem.
>
> While I never ever intended the ext3-to-ext2 reservations port to be
> used :), I think you can make some fairly minor tweaks to it and get
> something that works for your use case. Move the reservation drop to
> iput() and turn up your inode cache size, or store it in a tree when
> the inode is closed and go look for it again when it's reopened.
> Changing the reservation size seems fairly easy. I'm not sure how the
> overcommit issues affect your use case; any data you can share on
> that?
The overcommit is speculation on my part. GFS uses a lot of files on
the disks and we like to keep the disks near full, especially in large
GFS configurations. If we end up with a lot of reservations in-core,
associated with the inode cache, we begin to rely on memory pressure for
getting the reserved blocks back. That memory pressure may not exist
(leading to ENOSPC). Unless the code is adapted to cull reservations in
that case.
>
> In any case, storing the reservation data on-disk seems like not such
> a great idea. It adds complexity, disk traffic, and a new set of
> checks for fsck. I wouldn't want to incur that cost unless absolutely
> necessary.
Ya, I wouldn't want the reservations on disk either unless it came in as
an explicit pre-allocation request (and was accounted for in statfs
info). I'm treating that as a completely different beast at the moment.
Mike Waychison
next prev parent reply other threads:[~2007-07-06 21:16 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-06-29 20:01 fallocate support for bitmap-based files Andrew Morton
2007-06-29 20:36 ` Dave Kleikamp
2007-06-29 20:52 ` Mike Waychison
2007-06-29 21:24 ` Dave Kleikamp
2007-06-29 20:55 ` Theodore Tso
2007-06-29 21:38 ` Andrew Morton
2007-06-29 22:07 ` Mike Waychison
2007-07-04 23:11 ` Valerie Henson
2007-07-06 21:15 ` Mike Waychison [this message]
2007-06-29 21:46 ` Andreas Dilger
2007-06-29 22:26 ` Mike Waychison
2007-06-30 5:14 ` Andreas Dilger
2007-06-30 14:31 ` Mingming Cao
2007-06-30 14:13 ` Mingming Cao
2007-06-30 17:29 ` Andreas Dilger
2007-07-02 14:44 ` Mingming Cao
2007-07-02 17:44 ` Badari Pulavarty
2007-07-06 21:33 ` Mike Waychison
2007-07-07 2:05 ` Badari Pulavarty
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=468EB100.2040109@google.com \
--to=mikew@google.com \
--cc=adilger@clusterfs.com \
--cc=akpm@linux-foundation.org \
--cc=cmm@us.ibm.com \
--cc=linux-ext4@vger.kernel.org \
--cc=sreenivasac@google.com \
--cc=tytso@mit.edu \
--cc=val@nmt.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox