linux-raid.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: NeilBrown <neilb@suse.de>
To: Sebastian Riemer <sebastian.riemer@profitbricks.com>
Cc: linux-raid@vger.kernel.org
Subject: Re: Reason for md raid 01 blksize limited to 4 KiB?
Date: Mon, 28 May 2012 14:05:05 +1000	[thread overview]
Message-ID: <20120528140505.6eb49b26@notabene.brown> (raw)
In-Reply-To: <4FBF7CAD.7000307@profitbricks.com>

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

On Fri, 25 May 2012 14:35:57 +0200 Sebastian Riemer
<sebastian.riemer@profitbricks.com> wrote:

> Hi Neil,
> 
> On 22/05/12 01:28, NeilBrown wrote:
> > 
> > This should be fixed in linux 3.4 with commit 6b740b8d79252f13bcb7e5d3c1d
> > 
> 
> I've tested the RAID 01 with kernel 3.4 and it isn't fixed. It is even
> worse, because direct IO doesn't work any more on the raid1 device (with
> kernel 3.2 it worked).

What do you mean by "doesn't work"?  Returns errors? crashes? hangs? kills
you cat?

It works for me.

When I use 32K direct writes to a RAID1, both underlying RAID0 arrays see
64-sector writes.

(when I do normal buffered writes I see 8-sector writes which seems odd,
 but clearly md/RAID1 is allowing large writes through)

NeilBrown


> 
> There are still 4k chunks which aren't merged in the raid0 devices below
> (blkparse -i md100 -i md200 -i md300 | less).
> Could you also check this on your setup, please?
> 
> Cheers,
> Sebastian
> 
> 
> Btw. this is my test script:
> 
> #!/bin/bash
> if [ "`lsmod | grep brd`" == "" ]; then
>         modprobe brd rd_nr=4 rd_size=524288
> fi
> mdadm -C /dev/md100 --force --assume-clean -n 2 -l raid0 /dev/ram0 /dev/ram1
> mdadm -C /dev/md200 --force --assume-clean -n 2 -l raid0 /dev/ram2 /dev/ram3
> blktrace /dev/md100 &
> pid=$!
> dd if=/dev/zero of=/dev/md100 bs=1M oflag=direct
> kill -2 $pid
> blktrace /dev/md200 &
> pid=$!
> dd if=/dev/zero of=/dev/md200 bs=1M oflag=direct
> kill -2 $pid
> mv md100* r0_only/
> mv md200* r0_only/
> 
> mdadm -C /dev/md300 --force --assume-clean -n 2 -l raid1 /dev/md100
> /dev/md200
> blktrace -d /dev/md100 -d /dev/md200 -d /dev/md300 -b 4096 &
> pid=$!
> # Kernel 3.4 doesn't support direct IO on the md300 device
> dd if=/dev/zero of=/dev/md300 bs=1M
> kill -2 $pid
> --
> To unsubscribe from this list: send the line "unsubscribe linux-raid" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html


[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 828 bytes --]

  reply	other threads:[~2012-05-28  4:05 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-05-21  8:43 Reason for md raid 01 blksize limited to 4 KiB? Sebastian Riemer
2012-05-21 23:14 ` Stan Hoeppner
2012-05-21 23:28 ` NeilBrown
2012-05-25 12:35   ` Sebastian Riemer
2012-05-28  4:05     ` NeilBrown [this message]
2012-05-29  9:30       ` Sebastian Riemer
2012-05-29 10:25         ` NeilBrown
2012-05-30 13:03           ` Sebastian Riemer
2012-05-31  5:42             ` NeilBrown
2012-05-31  6:18               ` Yuanhan Liu
2012-05-31 10:26               ` Sebastian Riemer

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=20120528140505.6eb49b26@notabene.brown \
    --to=neilb@suse.de \
    --cc=linux-raid@vger.kernel.org \
    --cc=sebastian.riemer@profitbricks.com \
    /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;
as well as URLs for NNTP newsgroup(s).