From: Tino Keitel <tino.keitel@gmx.de>
To: linux-kernel@vger.kernel.org
Cc: Theodore Tso <tytso@mit.edu>
Subject: Re: Very slow header cache in mutt if the maildir is on ext3
Date: Wed, 17 Dec 2008 17:17:22 +0100 [thread overview]
Message-ID: <20081217161722.GA28303@dose.home.local> (raw)
In-Reply-To: <20081217123204.GO10590@mit.edu>
On Wed, Dec 17, 2008 at 07:32:04 -0500, Theodore Tso wrote:
[...]
> I just checked mutt 1.5.17 in Ubunty Hardy, and it sorts the inodes
> even if maildir_header_cache_verify is unset. (It sorts it earlier if
> that option is set, but a little later in the function, if it wasn't
> sorted earlier, it sorts it then.) Check for calls to maildir_sort()
> that use md_cmp_inode(); in my version of mutt, there are two such
> calls in mh.c:maildir_delayed_parsing().
I checked maildir_sort(), and it wasn't called with
maildir_header_cache_verify unset. In the source, it looks like this:
#if USE_HCACHE
if (option(OPTHCACHEVERIFY))
{
DO_SORT();
ret = stat(fn, &lastchanged);
}
...
if (ctx->magic == M_MH)
data = mutt_hcache_fetch (hc, p->h->path, strlen);
else
data = mutt_hcache_fetch (hc, p->h->path + 3, &maildir_hcache_keylen);
...
#endif /* USE_HCACHE */
DO_SORT();
So DO_SORT() is called _after_ reading the header cache if
maildir_header_cache_verify is unset, which is too late, because the
hard disk seeks to death if the cache is read with the unsorted inode
list.
Regards,
Tino
prev parent reply other threads:[~2008-12-17 16:17 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-12-17 0:16 Very slow header cache in mutt if the maildir is on ext3 Tino Keitel
2008-12-17 0:52 ` Tino Keitel
2008-12-17 1:03 ` Tino Keitel
2008-12-17 3:25 ` Theodore Tso
2008-12-17 9:10 ` Tino Keitel
2008-12-17 12:32 ` Theodore Tso
2008-12-17 16:17 ` Tino Keitel [this message]
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=20081217161722.GA28303@dose.home.local \
--to=tino.keitel@gmx.de \
--cc=linux-kernel@vger.kernel.org \
--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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox