From: Tim Deegan <tim@xen.org>
To: Paul Durrant <Paul.Durrant@citrix.com>
Cc: Alex Bligh <alex@alex.org.uk>,
"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
Ian Campbell <Ian.Campbell@citrix.com>,
Matt Wilson <msw@amazon.com>,
"xen-devel@lists.xen.org" <xen-devel@lists.xen.org>
Subject: Re: [Qemu-devel] [Xen-devel] [PATCH] Add Xen platform PCI device version 2.
Date: Wed, 26 Jun 2013 13:36:02 +0100 [thread overview]
Message-ID: <20130626123602.GD18887@ocelot.phlegethon.org> (raw)
In-Reply-To: <9AAE0902D5BC7E449B7C8E4E778ABCD0052A2F@LONPEX01CL01.citrite.net>
At 12:06 +0000 on 26 Jun (1372248391), Paul Durrant wrote:
> > -----Original Message-----
> > From: Tim Deegan [mailto:tim@xen.org]
> > Sent: 26 June 2013 12:58
> > To: Paul Durrant
> > Cc: Ian Campbell; Matt Wilson; Alex Bligh; xen-devel@lists.xen.org; qemu-
> > devel@nongnu.org
> > Subject: Re: [Xen-devel] [Qemu-devel] [PATCH] Add Xen platform PCI device
> > version 2.
> >
> > At 11:23 +0000 on 26 Jun (1372245783), Paul Durrant wrote:
> > > We could blacklist all existing Citrix PV drivers in upstream QEMU,
> > > to avoid the clash, but that seems like a very unfriendly
> > > approach. Also, it's not going to stop someone with an existing VM,
> > > who happens to be using legacy Citrix PV drivers (an AWS VM for
> > > instance) receiving a driver from Windows Update that will blue-screen
> > > their VM on next reboot. Hence the only way forward is to bind the new
> > > drivers to something new, that we can control, so we know what driver
> > > a VM is going to get from Windows Update.
> >
> > I don't think you ever got an answer about whether this could be
> > finagled using version numbers in the drivers.
>
> No, we thought about that and I don't believe it would be possible.
This doc makes it look like it's just a matter of choosing appropriate
version and dates:
http://msdn.microsoft.com/en-us/library/windows/hardware/gg487453.aspx
> > Also: would it not be possible to have a blkfront driver (even a trivial
> > one) in your new bus driver so it can detect and avoid this problem?
> >
> > Or: have your bus driver detect when the blkfront driver is missing and
> > not unplug the emulated disk? In fact wouldn't having the emulated disk
> > driver do the unplug solve it for free?
>
> The issue is the old s/w not the new s/w. The old drivers make
> assumptions about each other's presence as we can't change that
> because they are already out there.
The issue you mentioned was that the old drivers bound the block driver
to the PCI device, and when your new driver is installed you get STOP 7B
because the system disk is missing (because I guess you'd need the new
xenbus driver to come up before it will trigger installing the new block
driver).
So can the new driver not fix this, either by running a trivial blkfront
itself or by allowing the emulated IDE controller to live?
> > > And we may indeed need to
> > > modify its revision in future so that we can retire old sets of PV
> > > drivers and replace them with new ones, but only for newer XenServer
> > > releases. Thus, I also propose to make the PCI revision of the new
> > > device a command line parameter.
> >
> > I'd rather not. This gets straight back to having host-admin controls
> > that have to manually be matched to in-guest software.
>
> Well not really. This is just the same as a h/w vendor shipping a new
> device.
Well, that would be more like having the PCI revision reflect the Xen
version. Which might be a reasonable idea, if there is to be a second
PCI device.
But metaphors aside, it's still requiring an admin change in order to
match the software inside the VM, which as we've seen is unpopular with
admins. :)
Tim.
next prev parent reply other threads:[~2013-06-26 12:36 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-06-19 9:32 [Qemu-devel] [PATCH] Add Xen platform PCI device version 2 Paul Durrant
2013-06-19 9:42 ` [Qemu-devel] [Xen-devel] " Ian Campbell
2013-06-19 9:43 ` Paul Durrant
2013-06-19 10:07 ` Ian Campbell
2013-06-19 10:13 ` Paul Durrant
2013-06-19 10:42 ` Alex Bligh
2013-06-19 11:35 ` Paul Durrant
2013-06-19 18:21 ` Matt Wilson
2013-06-19 20:15 ` Tim Deegan
2013-06-20 7:47 ` Paul Durrant
2013-06-20 8:08 ` Alex Bligh
2013-06-20 8:19 ` Paul Durrant
2013-06-20 8:56 ` Tim Deegan
2013-06-20 9:25 ` Paul Durrant
2013-06-26 10:39 ` Ian Campbell
2013-06-26 11:23 ` Paul Durrant
2013-06-26 11:53 ` Ian Campbell
2013-06-26 11:57 ` Tim Deegan
2013-06-26 12:06 ` Paul Durrant
2013-06-26 12:36 ` Tim Deegan [this message]
2013-06-26 13:00 ` Paul Durrant
2013-06-26 20:00 ` Alex Bligh
2013-06-27 8:29 ` Paul Durrant
2013-06-27 10:58 ` Paul Durrant
2013-06-19 10:43 ` Ian Campbell
2013-06-19 10:36 ` Tim Deegan
2013-06-19 11:31 ` Paul Durrant
2013-06-19 16:40 ` Paolo Bonzini
2013-06-26 10:38 ` Ian Campbell
2013-06-19 10:54 ` James Harper
2013-06-19 11:23 ` Paul Durrant
2013-06-19 15:46 ` Tim Deegan
2013-06-19 16:03 ` Paul Durrant
2013-06-19 11:40 ` Paul Durrant
2013-06-20 12:17 ` [Qemu-devel] " Anthony Liguori
2013-06-20 12:44 ` Paul Durrant
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=20130626123602.GD18887@ocelot.phlegethon.org \
--to=tim@xen.org \
--cc=Ian.Campbell@citrix.com \
--cc=Paul.Durrant@citrix.com \
--cc=alex@alex.org.uk \
--cc=msw@amazon.com \
--cc=qemu-devel@nongnu.org \
--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).