All of lore.kernel.org
 help / color / mirror / Atom feed
From: Mike Snitzer <snitzer@redhat.com>
To: Vivek Goyal <vgoyal@redhat.com>
Cc: Jens Axboe <axboe@kernel.dk>,
	linux kernel mailing list <linux-kernel@vger.kernel.org>,
	martin.petersen@oracle.com
Subject: Re: [RFC PATCH] block: Change default IO scheduler to deadline except SATA
Date: Tue, 10 Apr 2012 13:40:36 -0400	[thread overview]
Message-ID: <20120410174036.GA4178@redhat.com> (raw)
In-Reply-To: <20120410172828.GI21801@redhat.com>

On Tue, Apr 10 2012 at  1:28pm -0400,
Vivek Goyal <vgoyal@redhat.com> wrote:

> On Tue, Apr 10, 2012 at 12:13:07PM -0400, Mike Snitzer wrote:
> 
> [..]
> > > So we are back to the question of can scsi devices find out if a Lun
> > > is backed by single disk or multiple disks.
> > 
> > I'm not aware of any discrete attribute (comparable to 'rotational'
> > flag) that SCSI devices will advertise that indicates "I'm a raid
> > array".
> > 
> > That said, we can have a _very_ good hint that a SCSI device is a raid array if:
> > 
> > 1) optimal_io_size is not zero, minimum_io_size is not equal to
> > optimal_io_size, and optimal_io_size is a multiple of minimum_io_size
> > 
> > 2) WCE=0 (higher-end arrays with a writeback cache)
> > 
> > Determining 1 could be enough, we should probably ignore 2 as it isn't
> > an absolute indication that a device is composed of multiple devices
> > (especially not if considered independently of 1).
> 
> Umm..., somehow relying on optimal_io_size != minimum_io_size sounds odd
> to me (assuming it works).
> 
> I checked bunch of Luns exported to me and all of them have
> optimal_io_size=0.

As I said above, this would only apply if "optimal_io_size is not zero, ..."

> I have few FC Luns exported from two array vendors. I have few iscsi Luns
> exported from two separate vendors and all these luns have
> optimal_io_size=0.

Seems all those LUNs haven't exported their limits via BLOCK LIMITS VPD.
But more recent firmware could rectify that.

Anyway, there is no one size fits all here, sorry to disappoint you!

  reply	other threads:[~2012-04-10 18:08 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-04-10 13:37 [RFC PATCH] block: Change default IO scheduler to deadline except SATA Vivek Goyal
2012-04-10 13:56 ` Jens Axboe
2012-04-10 14:21   ` Vivek Goyal
2012-04-10 15:10     ` Vivek Goyal
2012-04-10 16:13       ` Mike Snitzer
2012-04-10 17:28         ` Vivek Goyal
2012-04-10 17:40           ` Mike Snitzer [this message]
2012-04-10 18:36         ` Jens Axboe
2012-04-11 16:25         ` Martin K. Petersen
2012-04-10 18:41       ` Jens Axboe
2012-04-10 18:53         ` Vivek Goyal
2012-04-10 18:56           ` Jens Axboe
2012-04-10 19:11             ` Vivek Goyal
2012-04-10 19:19               ` Jens Axboe
2012-04-10 19:43                 ` Mike Snitzer
2012-04-10 19:55                   ` Jens Axboe
2012-04-10 20:12                     ` Mike Snitzer
  -- strict thread matches above, loose matches on Subject: below --
2012-04-10 17:44 Xose Vazquez Perez

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=20120410174036.GA4178@redhat.com \
    --to=snitzer@redhat.com \
    --cc=axboe@kernel.dk \
    --cc=linux-kernel@vger.kernel.org \
    --cc=martin.petersen@oracle.com \
    --cc=vgoyal@redhat.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 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.