All of lore.kernel.org
 help / color / mirror / Atom feed
From: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
To: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Cc: Juergen Gross <jgross@suse.com>,
	"Luis R. Rodriguez" <mcgrof@suse.com>,
	David Vrabel <david.vrabel@citrix.com>,
	Jan Beulich <JBeulich@suse.com>,
	xen-devel@lists.xenproject.org,
	Boris Ostrovsky <boris.ostrovsky@oracle.com>
Subject: Re: RFC: xen config changes v4
Date: Mon, 2 Mar 2015 11:07:02 -0500	[thread overview]
Message-ID: <20150302160702.GJ3418@l.oracle.com> (raw)
In-Reply-To: <alpine.DEB.2.02.1503020949150.23507@kaball.uk.xensource.com>

> > > >> I would prefer to hide it on PAE and x86_64.
> > > >
> > > >
> > > > Okay, as long as it is still _possible_ somehow to configure it.
> > > 
> > > That begs the question, all this just for 32-bit non-PAE ?
> > 
> > There was another reason. Some distros remove the CONFIG_XEN_DOM0 altogether
> > even thought they do enable the rest of the pieces (backends, frontends, etc).
> > 
> > Which begs the question - why do we care about DOM0 at all.
> > 
> > What we care about is drivers - either frontend or backend. If we want
> > backends and we want PV - then we want to build an kernel that can boot as
> > a normal PV or as an dom0 PV.
> > 
> > Ditto for HVM - if you want to build an kernel that won't do PV but
> > can do backends - we should be able to do that.
> > 
> > Or PVH  - we want an domain that can be an backend (or frontend).
> > 
> > That does mean the "PV" gets broken down further to be concrete
> > pieces and have nothing to do with drivers. 
> > 
> > The idea would be that you would just select four knobs:
> > 
> >  Yes/No Backend PV drivers [and maybe remove the PV part?]
> >  Yes/No Frontend PV drivers [and maybe remove the PV part?]
> >  Yes/No PV support (so utilizing the PV ABI)
> >  Yes/No PVH support (a stricter subset of PV ABI - with less pieces)
> > 
> > The HVM support would automatically be picked if the config had
> > the 'baremetal' type support - like IOAPIC, APIC, ACPI, etc.
> > 
> > So if you said Y, N, N, N, the kernel would only be able to
> > boot in HVM mode but still have pciback, netback, scsiback, blkback, and usbback.
> > (good for an device backend). And it could be an PAE or non-PAE kernel.
> > 
> > If you said N,Y,Y,Y then it could boot under HVM, PV, PVH, and only
> > have pcifront, netfront, scsifront, blkfront, and usbfront.
> > (not very good for an initial domain).
> > 
> > And so on.
> 
> It makes sense.
> 
> 
> > I hope I hadn't confused the matter?
> 
> Nope, I think it clarifies things, thanks.

Thought it does mean that it would add more #ifdery or cleanups
to the existing drivers so that they can be compiled under
different platforms without any assumptions.

> 
> In this context the issue we were discussing is what to do with the
> other PV interfaces for PV on HVM guests, such as HVMOP_pagetable_dying.
> I think it would be natural to enable them when Frontend PV drivers are
> enabled, without any additional Kconfig options.

I would put this in 'Enlightment support for Xen' - which would be
the basic foundation to make any kernel work under Xen. This would
pull in some _infrastructure_. Regardless of it being a backend
or frontend we need grant ops,event channels, support for migration.

Perhaps add that as a new option under CONFIG_HYPERVISOR. And not
depend on CONFIG_PARAVIRT - as in theory you can have an non-PARAVIRT HVM
guest running with PV drivers (I haven't tried it, but I would think
it can be done?)

Regarding the 'HVMOP_pagetable_drying' - If it is part of foundation
'enlightment for Xen' - then it would be folded in. If it is not, but
the platform looks to be a non-PV kernel (APIC, ACPI, IOPAPIC, MSI,
PCI, etc) then it would be automatically enabled.

BTW, when I think PV kernel - it is an non-APIC, non-ACPI, non.. a lot
of stuff. I did build one like that way back for 3.0 and it was quite
slim. lHm, maybe we should even provide an 'defconfig' just to make sure
we can test this kind of build?

Luis, sorry for hijacking this thread and expanding the scope of this work!

I think it would fantastical to make this work and would help a lot in
the future - but right now it is a bit of complex riddle to untangle!

  reply	other threads:[~2015-03-02 16:07 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-02-26  1:53 RFC: xen config changes v4 Luis R. Rodriguez
2015-02-26  4:59 ` Juergen Gross
2015-02-26 10:08   ` David Vrabel
2015-02-26 11:08     ` Stefano Stabellini
2015-02-26 17:29       ` Luis R. Rodriguez
2015-02-26 17:42         ` Stefano Stabellini
2015-02-26 18:48           ` Luis R. Rodriguez
2015-02-27  6:14             ` Juergen Gross
2015-02-27 21:33               ` Luis R. Rodriguez
2015-02-27 10:04             ` Ian Campbell
2015-02-27  6:09           ` Juergen Gross
2015-02-27  9:41             ` Stefano Stabellini
2015-02-27  9:55               ` Juergen Gross
2015-02-27 10:11                 ` Stefano Stabellini
2015-02-27 10:30                   ` Ian Campbell
2015-02-27 11:27                     ` Stefano Stabellini
2015-02-27 11:30                   ` Juergen Gross
2015-02-27 12:24                     ` Stefano Stabellini
2015-02-27 12:36                       ` Juergen Gross
2015-02-27 13:38                         ` Stefano Stabellini
2015-02-27 14:30                           ` Juergen Gross
2015-02-27 17:53                             ` Luis R. Rodriguez
2015-02-27 18:27                               ` Konrad Rzeszutek Wilk
2015-03-02  9:55                                 ` Stefano Stabellini
2015-03-02 16:07                                   ` Konrad Rzeszutek Wilk [this message]
2015-03-02 17:07                                     ` Stefano Stabellini
2015-03-02 17:30                                       ` Konrad Rzeszutek Wilk
2015-03-02 21:15                                         ` Luis R. Rodriguez
2015-03-03  6:59                                       ` Juergen Gross
2015-03-02 21:08                                     ` Luis R. Rodriguez
2015-03-02 20:39                                 ` Luis R. Rodriguez
2015-03-06 17:17                                   ` Luis R. Rodriguez
2015-03-06 18:02                                     ` Konrad Rzeszutek Wilk
2015-03-06 18:08                                       ` Luis R. Rodriguez
2015-03-06 18:24                                         ` Roger Pau Monné
2015-02-27 12:48                       ` Ian Campbell
2015-02-27 18:18                   ` Konrad Rzeszutek Wilk

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=20150302160702.GJ3418@l.oracle.com \
    --to=konrad.wilk@oracle.com \
    --cc=JBeulich@suse.com \
    --cc=boris.ostrovsky@oracle.com \
    --cc=david.vrabel@citrix.com \
    --cc=jgross@suse.com \
    --cc=mcgrof@suse.com \
    --cc=stefano.stabellini@eu.citrix.com \
    --cc=xen-devel@lists.xenproject.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 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.