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

On 03/02/2015 06:07 PM, Stefano Stabellini wrote:
> On Mon, 2 Mar 2015, Konrad Rzeszutek Wilk wrote:
>>>>>>> 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.
>
> Sounds good.
>
>
>> 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?)
>
> That is the bit I disagree with: not depending on CONFIG_PARAVIRT means
> that many good optimizations for PV on HVM guests won't be enabled.
> Doing so will cause a performance regression compared to the PV on HVM
> guests of today.

I think we should have some (hidden) config options to enable/disable
the basic features like frontends, backends, optimizations. Those
features would then be selected by user visible config options.

We should avoid mixing technically independent options under the same
config item.


Juergen

  parent reply	other threads:[~2015-03-03  7:00 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
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 [this message]
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=54F55BEE.4040005@suse.com \
    --to=jgross@suse.com \
    --cc=JBeulich@suse.com \
    --cc=boris.ostrovsky@oracle.com \
    --cc=david.vrabel@citrix.com \
    --cc=konrad.wilk@oracle.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.