> -----Original Message-----
> From: Jason Andryuk [mailto:jandr...@gmail.com]
> Sent: 13 March 2019 18:12
> To: Paul Durrant <paul.durr...@citrix.com>
> Cc: qemu-devel@nongnu.org; xen-de...@lists.xenproject.org; 
> marma...@invisiblethingslab.com; Stefano
> Stabellini <sstabell...@kernel.org>; Anthony Perard 
> <anthony.per...@citrix.com>; Paolo Bonzini
> <pbonz...@redhat.com>; Richard Henderson <r...@twiddle.net>; Eduardo Habkost 
> <ehabk...@redhat.com>;
> Michael S. Tsirkin <m...@redhat.com>; Marcel Apfelbaum 
> <marcel.apfelb...@gmail.com>
> Subject: Re: [PATCH 2/6] xen: Move xenstore initialization to common location
> 
> On Wed, Mar 13, 2019 at 11:01 AM Paul Durrant <paul.durr...@citrix.com> wrote:
> >
> > > -----Original Message-----
> > > From: Jason Andryuk [mailto:jandr...@gmail.com]
> > > Sent: 11 March 2019 18:02
> > > To: qemu-devel@nongnu.org
> > > Cc: xen-de...@lists.xenproject.org; marma...@invisiblethingslab.com; 
> > > Jason Andryuk
> > > <jandr...@gmail.com>; Stefano Stabellini <sstabell...@kernel.org>; 
> > > Anthony Perard
> > > <anthony.per...@citrix.com>; Paul Durrant <paul.durr...@citrix.com>; 
> > > Paolo Bonzini
> > > <pbonz...@redhat.com>; Richard Henderson <r...@twiddle.net>; Eduardo 
> > > Habkost <ehabk...@redhat.com>;
> > > Michael S. Tsirkin <m...@redhat.com>; Marcel Apfelbaum 
> > > <marcel.apfelb...@gmail.com>
> > > Subject: [PATCH 2/6] xen: Move xenstore initialization to common location
> > >
> > > For the xen stubdom case, we'll want xenstore initialized, but we'll
> > > want to skip the rest of xen_be_init.  Move the initialization to
> > > xen_hvm_init so we can conditionalize calling xen_be_init.
> > >
> > > xs_domain_open() is deprecated for xs_open(0), so make the replacement
> > > as well.
> >
> > Can you elaborate as to why you need to do this when the code at the top of 
> > xen_hvm_init() already
> opens xenstore for its own purposes, and AFAICT xenstore_update() is only 
> needed if QEMU is
> implementing a PV backend?
> >
> >
> 
> Hi, Paul.  Thanks for reviewing.
> 
> I think you are right, that this basically shouldn't be needed if PV
> backends are disabled.  This patch came out of OpenXT, where it is
> needed for some out-of-tree patches.  But that doesn't make it
> suitable for upstreaming.
> 
> However, while reviewing, it looks like the xen accelerator in
> hw/xen/xen-common.c:xen_init() registers xen_change_state_handler().
> xen_change_state_handler() uses the global xenstore handle and will
> exit(1) if NULL.

I see it yes. TBH signalling state via xenstore should go away as it is 
incompatible with deprivileging, and I think Anthony might have some patches 
for that? In the meantime I suggest just doing a local xs_open(0) in that 
function.

> I'm not sure how to get the XenIOState xenstore
> handle over to the accelerator's xen_init.

That would not be appropriate as the machine type may not be xenfv and hence 
xen_hvm_init() may not have been called.

  Paul

>  Outside of that, I think
> you are correct that xenstore_update doesn't need to be run when PV
> backends are disabled.
> 
> Thanks,
> Jason

Reply via email to