All of lore.kernel.org
 help / color / mirror / Atom feed
From: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
To: Wei Liu <wei.liu2@citrix.com>,
	Venu Busireddy <venu.busireddy@oracle.com>
Cc: "Xuquan (Quan Xu)" <xuquan8@huawei.com>,
	"sstabellini@kernel.org" <sstabellini@kernel.org>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	Yanqiangjun <yanqiangjun@huawei.com>,
	Ian Jackson <Ian.Jackson@eu.citrix.com>,
	lidonglin <lidonglin@huawei.com>,
	"xen-devel@lists.xen.org" <xen-devel@lists.xen.org>,
	Fanhenglong <fanhenglong@huawei.com>,
	"dengkai (A)" <dengkai1@huawei.com>
Subject: Re: PCI passthrough will cause unknown device appearance in device manager of Windows OS via xenstore keys
Date: Mon, 10 Apr 2017 10:12:15 -0400	[thread overview]
Message-ID: <20170410141215.GI21201@char.us.oracle.com> (raw)
In-Reply-To: <20170410132858.x7dymdyh6nh73qp2@citrix.com>

On Mon, Apr 10, 2017 at 02:28:58PM +0100, Wei Liu wrote:
> On Mon, Apr 10, 2017 at 01:46:20PM +0100, Andrew Cooper wrote:
> > On 10/04/17 12:24, lidonglin wrote:
> > >
> > > Hi all:
> > >
> > >                 I have one question about PCI passthrough. I found
> > > that if I created a VM with host pci device(cfg file as below), there
> > > were some xenstore keys exsiting in /local/domain/0 and
> > > /local/domain/DomID/. Besides I found one unknown device in device
> > > manager of Windows OS with Class ID FF80 from vendor ID 5853. My
> > > questions  are as below:
> > >
> > >  
> > >
> > > 1.       Why do we create frontend and backend key pairs in xenstore?
> > >  I think  Passthrough is not PV,  was it possible that we just used
> > > these keys to record something?
> > >
> > > 2.        After review the code, I think backend keys are used to
> > > record state of hostdev, some codes will query something using these
> > > keys. But for frontend keys, can we delete them?
> > >
> > > 3.       if frontend keys exist in xenstore, then unknown device will
> > > appear in device manager. Can we fix this?  For  an obsessive,  he
> > > can’t stand for this.
> > >
> > 
> > This is a libxl bug which has been reported before, but nothing happened.
> > 
> > libxl must not start a PV pci-back when doing HVM PCI passthrough using
> > qemu, because absolutely nothing good can come of having two different
> > ways of poking at PCI state.
> > 
> > The patch, unchanged from before, is
> > https://github.com/xenserver/xen-4.7.pg/blob/master/master/0001-libxl-Don-t-insert-PCI-device-into-xenstore-for-HVM-.patch
> > 
> 
> ISTR Konrad made some comments about it. CC Konrad.

Aye. My primary beef was that you need some FLR mechanism and pciback
does that. The 'do_flr' was the solution to that - as you could
effectively do it via an ioctl and all would be good.

Except I am probably missing some edge case (like guest is killed
and we need to do an FLR again, or there are AERs to deal with, etc) so
some pciback -> xenstore -> libxl needs to be in place even for HVM guests.

Just disabling pciback for HVM does not solve the problem that:

 - We need FLR
 - We need AER support (CC-ing Venu who is working on this for libxl/pciback)

> 
> > ~Andrew

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

  reply	other threads:[~2017-04-10 14:12 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-04-10 11:24 PCI passthrough will cause unknown device appearance in device manager of Windows OS via xenstore keys lidonglin
2017-04-10 12:46 ` Andrew Cooper
2017-04-10 13:28   ` Wei Liu
2017-04-10 14:12     ` Konrad Rzeszutek Wilk [this message]
2017-04-10 14:21       ` Andrew Cooper
2017-04-10 14:44         ` Konrad Rzeszutek Wilk
2017-04-10 15:37           ` Sander Eikelenboom
2017-04-10 13:43   ` Konrad Rzeszutek Wilk
2017-04-12 15:46     ` Wei Liu
2017-04-12 20:21       ` Konrad Rzeszutek Wilk
2017-04-13  8:41         ` Wei Liu
2017-04-13 11:22           ` Roger Pau Monné
2017-04-13 17:12             ` Stefano Stabellini
2017-04-13 17:31           ` Konrad Rzeszutek Wilk
2017-04-11 10:47   ` 答复: " lidonglin

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=20170410141215.GI21201@char.us.oracle.com \
    --to=konrad.wilk@oracle.com \
    --cc=Ian.Jackson@eu.citrix.com \
    --cc=andrew.cooper3@citrix.com \
    --cc=dengkai1@huawei.com \
    --cc=fanhenglong@huawei.com \
    --cc=lidonglin@huawei.com \
    --cc=sstabellini@kernel.org \
    --cc=venu.busireddy@oracle.com \
    --cc=wei.liu2@citrix.com \
    --cc=xen-devel@lists.xen.org \
    --cc=xuquan8@huawei.com \
    --cc=yanqiangjun@huawei.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.