All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andrew Cooper <andrew.cooper3@citrix.com>
To: Jan Beulich <JBeulich@suse.com>,
	Ben Catterall <Ben.Catterall@citrix.com>
Cc: xen-devel@lists.xen.org
Subject: Re: RFC on deprivileged x86 hypervisor device models
Date: Mon, 20 Jul 2015 14:43:08 +0100	[thread overview]
Message-ID: <55ACFAEC.50400@citrix.com> (raw)
In-Reply-To: <55A93D9802000078000928CD@mail.emea.novell.com>

On 17/07/15 16:38, Jan Beulich wrote:
>>>> On 17.07.15 at 17:19, <Ben.Catterall@citrix.com> wrote:
>> On 17/07/15 15:20, Jan Beulich wrote:
>>> If not, then method 2 would seem quite a bit less troublesome than
>>> method 1, yet method 3 would (even if more involved in terms of
>>> changes to be done) perhaps result in the most elegant result.
>> I agree that method three is more elegant. If both you and Andrew are ok 
>> with going in a per-vcpu stack direction for Xen in general then I'll 
>> write a per-vcpu patch first and then do another patch which adds the 
>> ring 3 feature on-top of that.
> Actually improvements to common/wait.c have also been thought of
> long ago already, for whenever per-vCPU stacks would be available.
> The few users of these interfaces never resulted in this becoming
> important enough a work item, unfortunately.

While per-vcpu stacks would be nice, there are a number of challenges to
be overcome before they can sensibly be used.  Off the top of my head,
per-vcpu state living at the top of the stack, hard coded stack
addresses in the emulation stubs, IST stacks moving back onto the
primary stack and splitting out a separate irq stack if the ring0 stack
wants to be left with partial state on.

Therefore I recommend method 2 to reuse the existing kudge we have. 
That will allow you to actually investigate some of the depriv aspects
in the time you have.

~Andrew

  reply	other threads:[~2015-07-20 13:43 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-07-17 10:09 RFC on deprivileged x86 hypervisor device models Ben Catterall
2015-07-17 10:27 ` Fabio Fantoni
2015-07-17 10:29   ` Andrew Cooper
2015-07-17 12:32 ` Paul Durrant
2015-07-17 14:20 ` Jan Beulich
2015-07-17 15:19   ` Ben Catterall
2015-07-17 15:38     ` Jan Beulich
2015-07-20 13:43       ` Andrew Cooper [this message]
2015-07-20 13:58         ` Jan Beulich
2015-07-20 14:10           ` Ben Catterall

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=55ACFAEC.50400@citrix.com \
    --to=andrew.cooper3@citrix.com \
    --cc=Ben.Catterall@citrix.com \
    --cc=JBeulich@suse.com \
    --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 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.