xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
From: "Roger Pau Monné" <roger.pau@citrix.com>
To: "G.R." <firemeteor@users.sourceforge.net>
Cc: xen-devel <xen-devel@lists.xen.org>
Subject: Re: Any plan to support disk driver domain?
Date: Thu, 25 Jul 2013 10:31:03 +0200	[thread overview]
Message-ID: <51F0E247.80800@citrix.com> (raw)
In-Reply-To: <CAKhsbWZAa935mOYYv4gUuCeTU9t04_wed9p5uF8t0_fc-cM5PA@mail.gmail.com>

On 24/07/13 18:17, G.R. wrote:
>>
>>> In your example, the driver is setup using zvol. I wonder if there are
>>> any constraint prohibiting using a file based backend?
>>
>> I have not tried it, but FreeBSD blkback should be able to handle raw
>> files also.
>>
>>> Finally, I saw this limitation in the wiki:
>>>>> It is not possible to use driver domains with pygrub or HVM guests yet, so it will only work with PV guests that have the kernel in Dom0.
>>> While I can imagine why pygrub does not work, I don't understand the
>>> reason HVM is affected here. Could you explain a little bit?
>>> And what about a HVM with PV driver? (e.g. those windows guests)
>>
>> If you use HVM, Qemu needs to access the block/file used as disk, so if
>> the disk is on another domain Qemu has no way to access it (unless you
>> plug the disk to the Dom0 and then pass the created block device
>> /dev/xvd* to Qemu).
>>
> 
> I just upgrade to xen 4.3 and here is my quick report.
> 
> With some preliminary test, I can confirm that freebsd 8.3 is able to
> serve as disk backend, exporting file as a disk.
> I was able to block-attach it and mount it in dom0.
> However, there are some issues with the xl block-list / block-detach command.
> The attached disk cannot be listed. And block-detach will report fail
> when I try to get it removed.

This is probably due to block-list/attach commands making assumptions
about the backend domain always being Dom0. I will take a look, thanks
for the report.

> However, it appears to have removed the data in xenstored in spite of
> the remove error report.
> And I was able to re-attach the same file again later.
> 
> There is also an issue about block-attach -- it does not prevent me
> attaching the same file twice accidentally.

This kind of check should be implemented in FreeBSD itself rather than
the toolstack. I will take a look into FreeBSD blkback in order to
prevent it from attaching the same disk twice.

> This appears to crash the whole system later when I tried some further
> operations.
> 
> I believe I should be able to serve HVM domU in this way (using dom0
> as a proxy).
> But this appears to introduce some overhead (dom0 proxy).
> I wonder if it will be hard to provide HVM support for disk domain?

This is not possible due to the fact than when using Qemu the Qemu
process in Dom0 needs access to the disk you are attaching to the guest.
For PVHVM guests this is not a big deal, because the emulated device
will only be used for the bootloader, and then the OS switches to PV,
which doesn't use Dom0 as a proxy.

The only improvement here would be to auto attach the disk to Dom0 in
order to launch Qemu, which now has to be done manually. The same
happens with PV domains that use pygrub.

> Will it be able to provide dual-interface like hda/xvda so the
> overhead is eliminated after PV driver is loaded?

Exactly.

> It will be great if you can share your plan / schedule about further
> enhancement of this feature.

Next steps are fixing the bugs you describe, and allowing driver domains
to use userspace backends (Qdisk for instance).

Roger.

  reply	other threads:[~2013-07-25  8:31 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-04-04 10:26 Any plan to support disk driver domain? G.R.
2013-04-04 11:54 ` Roger Pau Monné
2013-04-04 12:08   ` G.R.
2013-04-04 14:23 ` Daniel De Graaf
2013-04-04 15:48   ` G.R.
2013-05-28 10:16 ` Roger Pau Monné
2013-06-21  3:26   ` G.R.
2013-06-21 18:05     ` Konrad Rzeszutek Wilk
2013-06-22  7:03     ` Roger Pau Monné
2013-06-22 12:23       ` G.R.
2013-07-24 16:17       ` G.R.
2013-07-25  8:31         ` Roger Pau Monné [this message]
2013-07-25 15:35           ` G.R.
2013-08-07 10:32             ` G.R.
2013-07-31 15:36           ` George Dunlap

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=51F0E247.80800@citrix.com \
    --to=roger.pau@citrix.com \
    --cc=firemeteor@users.sourceforge.net \
    --cc=xen-devel@lists.xen.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 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).