All of lore.kernel.org
 help / color / mirror / Atom feed
From: Gerd Hoffmann <kraxel@suse.de>
To: Ian Pratt <m+Ian.Pratt@cl.cam.ac.uk>
Cc: xen-devel@lists.xensource.com
Subject: Re: [patch] Add support for barriers to blk{back,front} drivers.
Date: Mon, 30 Oct 2006 13:43:08 +0100	[thread overview]
Message-ID: <4545F35C.1040302@suse.de> (raw)
In-Reply-To: <8A87A9A84C201449A0C56B728ACF491E932E@liverpoolst.ad.cl.cam.ac.uk>

  Hi,

> What block devices currently support barriers? I assume device mapper
> does (if the underlying devices do), but loop presumably doesn't. 

ide does, sata does (at least ide also depending on disk capabilities),
lvm on top of these does too.

loop doesn't, I have a patch in the queue though:
http://www.suse.de/~kraxel/patches/kraxel-unstable-zweiblum-hg11870-quilt/loop-barrier.diff

>> The error is also propagated to the frontend so it knows 
>> barriers don't work (and can in turn propagate that up to the 
>> filesystem driver), the new BLKIF_RSP_EOPNOTSUPP error code 
>> is needed for that.
> 
> Do you do a probe at backendd initialisation time to avoid telling the
> frontend that barriers are supported and then having to tell it they are
> not the first time it tries to use one? Althoug Linux may be happy with
> that its not a clean interface.

Well, there is no way around that.  The only way to probe this reliably
is to actually submit a barrier request to the hardware and see if they
work ok (due to some buggy drives, telling they support the required
features but grok if such a request is submitted).

There are likely cases where it is possible to figure it in advance and
avoid the "submit barrier req and see it fail" roundtrip.  Havn't
investigated that.  I'd prefer to have *one* code path only, if you have
two the unlikely of them tends to get much less tested ...

cheers,
  Gerd

-- 
Gerd Hoffmann <kraxel@suse.de>
http://www.suse.de/~kraxel/julika-dora.jpeg

  reply	other threads:[~2006-10-30 12:43 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-10-30 12:15 [patch] Add support for barriers to blk{back, front} drivers Ian Pratt
2006-10-30 12:43 ` Gerd Hoffmann [this message]
2006-11-08 15:38   ` [patch] Add support for barriers to blk{back,front} drivers Gerd Hoffmann
2006-11-09  1:04     ` [patch] Add support for barriers to blk{back, front} drivers Ian Pratt
2006-11-09  1:15       ` John Levon
2006-11-09  9:00     ` [patch] Add support for barriers to blk{back,front} drivers Keir Fraser
2006-11-09 12:48       ` Gerd Hoffmann
2006-11-09 13:47         ` Keir Fraser
2006-11-09 14:15           ` Gerd Hoffmann
  -- strict thread matches above, loose matches on Subject: below --
2006-10-27 13:46 [patch] Add support for barriers to blk{back, front} drivers Ian Pratt
2006-10-30  8:21 ` [patch] Add support for barriers to blk{back,front} drivers Gerd Hoffmann
2006-10-23 11:42 [patch] Add support for barriers to blk{back, front} drivers Ian Pratt
2006-10-23 12:27 ` [patch] Add support for barriers to blk{back,front} drivers Gerd Hoffmann
2006-10-25 16:52   ` Gerd Hoffmann
2006-10-20  8:38 [patch] Add support for barriers to blk{back, front} drivers kraxel
2006-10-20 20:35 ` Ian Pratt

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=4545F35C.1040302@suse.de \
    --to=kraxel@suse.de \
    --cc=m+Ian.Pratt@cl.cam.ac.uk \
    --cc=xen-devel@lists.xensource.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.