xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
From: Juergen Gross <jgross@suse.com>
To: George Dunlap <George.Dunlap@eu.citrix.com>
Cc: Ian Jackson <ian.jackson@eu.citrix.com>,
	Stefano Stabellini <stefano.stabellini@eu.citrix.com>,
	Wei Liu <wei.liu2@citrix.com>, Chunyan Liu <cyliu@suse.com>,
	"xen-devel@lists.xen.org" <xen-devel@lists.xen.org>
Subject: Re: [PATCH 3/3] libxl: add new pvusb backend "qusb" provided by qemu
Date: Wed, 30 Mar 2016 06:43:57 +0200	[thread overview]
Message-ID: <56FB598D.3080309@suse.com> (raw)
In-Reply-To: <56FA5A6F.4050905@suse.com>

On 29/03/16 12:35, Juergen Gross wrote:
> On 29/03/16 11:45, George Dunlap wrote:
>> On Fri, Mar 25, 2016 at 6:09 AM, Juergen Gross <jgross@suse.com> wrote:
>>> On 24/03/16 21:07, Wei Liu wrote:
>>>> On Fri, Mar 18, 2016 at 09:24:26AM +0100, Juergen Gross wrote:
>>>>> On 17/03/16 17:55, George Dunlap wrote:
>>>>>> On Thu, Mar 10, 2016 at 3:00 PM, Juergen Gross <jgross@suse.com> wrote:
>>>>>>> Add a new pvusb backend type "qusb" which is provided by qemu. It can
>>>>>>> be selected either by specifying the type directly in the configuration
>>>>>>> or it is selected automatically by libxl in case there is no "usbback"
>>>>>>> driver loaded.
>>>>>>>
>>>>>>> Signed-off-by: Juergen Gross <jgross@suse.com>
>>>>>>
>>>>>> Oh, last thing -- shouldn't we have a way for libxl to tell whether
>>>>>> qemu can provide a qusb backend before we offer to start it up?
>>>>>
>>>>> How? Is this possible for qdisk? Or for an emulated frame buffer?
>>>>>
>>>>
>>>> I don't think it is  possible at the moment. But I think you might be
>>>> able to do it either via qmp command or parsing qemu help string. The
>>>> latter functionality is implemented in Ian's device model deprivilege
>>>> patch series IIRC -- but it is not yet merged either.
>>>
>>> Won't help for qusb, as there is no qemu parameter or help text related
>>> to the backend. It would be possible to add a qmp command to print the
>>> supported backend types, of course.
>>
>> Well as I understand it, for qemu-upstream we can't assume what
>> version of qemu we'll end up getting: we need to be compatible with
>> recent releases of qemu which don't provide qusb.  Which I'm pretty
>> sure means failing gracefully (i.e., giving a sensible warning
>> message) if someone tries to add qusb when their qemu binary doesn't
>> support it.
>>
>> If you can tell from the qemu failure that qusb is at fault, that's OK
>> I think; but if not, I think you'll have to add some way to query
>> whether qusb is supported by the qemu binary before starting it.
> 
> So we would want a qemu command line option (e.g. -xen-help) printing
> the supported pv backends. I think this should be easy to setup.

Actually there is a solution which is _really_ simple: before setting
it's state to "running" in xenstore, qemu could write the supported
backend types to xenstore, too. I'd add a xenstore directory

/local/domain/<backend-domid>/device-model/<domid>/backends

containing a directory for each supported backend. By using a directory
for each backend it would even be possible to indicate supported
features and/or parameters in the future.

"qusb" backend would be regarded to be supported only if
/local/domain/<backend-domid>/device-model/<domid>/backends/qusb
is existing.

"qdisk" would be regarded to be supported if either:
- /local/domain/<backend-domid>/device-model/<domid>/backends/qdisk
  is existing or:
- /local/domain/<backend-domid>/device-model/<domid>/backends
  is not existing.


Juergen

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel

      reply	other threads:[~2016-03-30  4:43 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-03-10 15:00 [PATCH 0/3] libxl: add support for qemu base pvusb backend Juergen Gross
2016-03-10 15:00 ` [PATCH 1/3] libxl: make libxl__need_xenpv_qemu() operate on domain config Juergen Gross
2016-03-17 16:53   ` George Dunlap
2016-03-18  8:23     ` Juergen Gross
2016-03-10 15:00 ` [PATCH 2/3] libxl: add domain config parameter to force start of qemu Juergen Gross
2016-03-17 16:06   ` George Dunlap
2016-03-18  8:11     ` Juergen Gross
2016-03-21 14:28       ` George Dunlap
2016-03-21 14:44         ` Juergen Gross
2016-03-10 15:00 ` [PATCH 3/3] libxl: add new pvusb backend "qusb" provided by qemu Juergen Gross
2016-03-17 16:39   ` George Dunlap
2016-03-18  8:22     ` Juergen Gross
2016-03-17 16:55   ` George Dunlap
2016-03-18  8:24     ` Juergen Gross
2016-03-24 20:07       ` Wei Liu
2016-03-25  6:09         ` Juergen Gross
2016-03-29  9:45           ` George Dunlap
2016-03-29 10:35             ` Juergen Gross
2016-03-30  4:43               ` Juergen Gross [this message]

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=56FB598D.3080309@suse.com \
    --to=jgross@suse.com \
    --cc=George.Dunlap@eu.citrix.com \
    --cc=cyliu@suse.com \
    --cc=ian.jackson@eu.citrix.com \
    --cc=stefano.stabellini@eu.citrix.com \
    --cc=wei.liu2@citrix.com \
    --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).