All of lore.kernel.org
 help / color / mirror / Atom feed
From: martin f krafft <madduck@madduck.net>
To: linux kernel mailing list <linux-kernel@vger.kernel.org>
Subject: Abysmal I/O scheduling with dm-crypt
Date: Tue, 30 Aug 2011 09:14:07 +0200	[thread overview]
Message-ID: <20110830071407.GA8165@albatross.gern.madduck.net> (raw)

[-- Attachment #1: Type: text/plain, Size: 2048 bytes --]

Dear list,

for years I have been plagued by the following problem, and it is
almost out of last resort that I am turning to you. I have searched
the web over the months. There is talk of dirty_ratios, of caches,
and of write throttling, but I have not been able to find a way to
fix the problem.

I am using encrypted filesystems (dm-crypt) and the 3.0.0 kernel.
Underneath might be a RAID1 or a fast SSD. On top is usually LVM
with a few LVs holding the system.

Whenever an I/O-intensive task starts, such as:

  - tar -c or -x
  - dd
  - rsync
  - notmuch
  - …

the system becomes unusable for several seconds at a time, at least
once or twice per minute. What seems to happen is that Vim or the
Shell or Firefox or whatever else completely blocks, waiting for
I/O, but Linux is not satisfying those I/O requests because it's
busy servicing the aforementioned I/O-intensive task. As a result,
Vim or the Shell or Firefox or whatever do not update, forcing me to
wait for them to get an I/O service slot.

People not running dm-crypt seem unable to reproduce this problem,
making me think that it must be due to dm-crypt, and I wouldn't find
it hard to imagine, because dm-crypt basically shields the
I/O-scheduler of the kernel, doesn't it? Worse, it probably doesn't
make any effort of scheduling I/O itself. Note: I know very little
about the internals, so please correct me if I am wrong.

I am wondering if this is the case, and if so, what could be done
about it.

Do you have any ideas and/or concrete suggestions?

PS: http://bugs.debian.org/635768 was the latest incarnation of my
    attempts to solve this problem (I accidentally wrote notmuch
    when I mean to write awesome in that report…).

-- 
martin | http://madduck.net/ | http://two.sentenc.es/
 
"gilmour's guitar sounds good
 whether you've got a bottle of cider in your hand
 or a keyboard and a mouse."
                                                -- prof. bruce maxwell
 
spamtraps: madduck.bogus@madduck.net

[-- Attachment #2: Digital signature (see http://martin-krafft.net/gpg/sig-policy/999bbcc4/current) --]
[-- Type: application/pgp-signature, Size: 1124 bytes --]

             reply	other threads:[~2011-08-30  7:23 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-08-30  7:14 martin f krafft [this message]
2011-09-05 15:37 ` Abysmal I/O scheduling with dm-crypt Jan Kara
2011-09-08  2:51   ` Dan Merillat
2011-09-19 18:39 ` Valdis.Kletnieks

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=20110830071407.GA8165@albatross.gern.madduck.net \
    --to=madduck@madduck.net \
    --cc=linux-kernel@vger.kernel.org \
    /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.