All of lore.kernel.org
 help / color / mirror / Atom feed
From: Rahul Singh <Rahul.Singh@arm.com>
To: Julien Grall <julien@xen.org>
Cc: xen-devel <xen-devel@lists.xenproject.org>,
	Bertrand Marquis <Bertrand.Marquis@arm.com>,
	Andrew Cooper <andrew.cooper3@citrix.com>,
	George Dunlap <george.dunlap@citrix.com>,
	Jan Beulich <jbeulich@suse.com>,
	Stefano Stabellini <sstabellini@kernel.org>, Wei Liu <wl@xen.org>
Subject: Re: [PATCH] xen/evtchn: Add design for static event channel signaling for domUs..
Date: Wed, 13 Apr 2022 10:09:37 +0000	[thread overview]
Message-ID: <8D312C7F-DF7D-4961-BF9A-4D76C8EA91CD@arm.com> (raw)
In-Reply-To: <4f8ae917-d5d6-d93b-b31a-d46b55fa66cd@xen.org>

Hello Julien,

> On 13 Apr 2022, at 10:44 am, Julien Grall <julien@xen.org> wrote:
> 
> Hi Rahul,
> 
> On 13/04/2022 09:25, Rahul Singh wrote:
>>> On 11 Apr 2022, at 7:01 pm, Julien Grall <julien@xen.org> wrote:
>>>> Signed-off-by: Rahul Singh <rahul.singh@arm.com>
>>>> ---
>>>> docs/designs/dom0less-evtchn.md | 96 +++++++++++++++++++++++++++++++++
>>>> 1 file changed, 96 insertions(+)
>>>> create mode 100644 docs/designs/dom0less-evtchn.md
>>>> diff --git a/docs/designs/dom0less-evtchn.md b/docs/designs/dom0less-evtchn.md
>>>> new file mode 100644
>>>> index 0000000000..6a1b7e8c22
>>>> --- /dev/null
>>>> +++ b/docs/designs/dom0less-evtchn.md
>>>> @@ -0,0 +1,96 @@
>>>> +# Signaling support between two domUs on dom0less system
>>>> +
>>>> +## Current state: Draft version
>>>> +
>>>> +## Proposer(s): Rahul Singh, Bertrand Marquis
>>>> +
>>>> +## Problem Statement:
>>>> +
>>>> +The goal of this work is to define a simple signaling system between Xen guests
>>>> +in dom0less systems.
>>>> +
>>>> +In dom0less system, we cannot make use of xenbus and xenstore that are used in
>>>> +normal systems with dynamic VMs to communicate between domains by providing a
>>>> +bus abstraction for paravirtualized drivers.
>>>> +
>>>> +One possible solution to implement the signaling system between domUs is based
>>>> +on event channels.
>>>> +
>>>> +## Proposal:
>>>> +
>>>> +Event channels are the basic primitive provided by Xen for event notifications.
>>>> +An event channel is a logical connection between 2 domains (more specifically
>>>> +between dom1,port1 and dom2,port2). They essentially store one bit of
>>>> +information, the event of interest is signalled by transitioning this bit from
>>>> +0 to 1. An event is an equivalent of a hardware interrupt.
>>>> +
>>>> +Notifications are received by a guest via an interrupt from Xen to the guest,
>>>> +indicating when an event arrives (setting the bit).
>>> 
>>> I am a bit confused with the description. Are you trying to explain the event channel in layman term? If not, then event channel protocol is more complicated than that (in particular for fifo).
>> Yes I am trying to explain the event-channel in simple term.
> 
> I would suggest to make that clear and also point to the documentation for the Event Channel ABI (we have a doc for fifo at least).

Ack. 
> 
>>>> +
>>>> +Event channel communication will be established statically between two domU
>>>> +guests before unpausing the domains after domain creation. Event channel
>>>> +connection information between domUs will be passed to XEN via device tree
>>>> +node.
>>> 
>>> Why are we limiting ourself to domUs?
>> As this design is for a dom0less system I mean here to all the domains on the dom0less system.
>> What I understand is that all domains in the dom0less system are called as domUs.
> 
> It depends on whether an admin may have specific a dom0 kernel. Looking at Penny series to handle shared memory, it will be possible to create a shared region between dom0 and a dom0less domU. Most likely the user will also want to provide a notification communication.
> 
> So shouldn't we also provide a way to create an event channel between dom0 and another domU?

Yes, we can create the event channel between dom0 and dom0less domU. I will add this in the next design doc.

Sorry for not explaining it correctly earlier I mean to say that all domains ( including the dom0 ) in the dom0less system can
have the static event channel.  

Regards,
Rahul


      reply	other threads:[~2022-04-13 10:10 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-03-23 15:43 [PATCH] xen/evtchn: Add design for static event channel signaling for domUs Rahul Singh
2022-03-23 16:07 ` Jan Beulich
2022-03-24 11:32   ` Rahul Singh
2022-03-24 12:24 ` David Vrabel
2022-04-11 16:01   ` Rahul Singh
2022-04-09  1:00 ` Stefano Stabellini
2022-04-09  1:44   ` Stefano Stabellini
2022-04-11 10:44     ` Bertrand Marquis
2022-04-14  1:14       ` Stefano Stabellini
2022-04-14 13:18         ` Bertrand Marquis
2022-04-14 17:11           ` Stefano Stabellini
2022-04-19 17:16         ` Rahul Singh
2022-04-20  0:25           ` Stefano Stabellini
2022-04-11 15:28   ` Rahul Singh
2022-04-11 18:16   ` Julien Grall
2022-04-12 20:39     ` Stefano Stabellini
2022-04-13  9:51       ` Julien Grall
2022-04-11 18:01 ` Julien Grall
2022-04-13  8:25   ` Rahul Singh
2022-04-13  9:44     ` Julien Grall
2022-04-13 10:09       ` Rahul Singh [this message]

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=8D312C7F-DF7D-4961-BF9A-4D76C8EA91CD@arm.com \
    --to=rahul.singh@arm.com \
    --cc=Bertrand.Marquis@arm.com \
    --cc=andrew.cooper3@citrix.com \
    --cc=george.dunlap@citrix.com \
    --cc=jbeulich@suse.com \
    --cc=julien@xen.org \
    --cc=sstabellini@kernel.org \
    --cc=wl@xen.org \
    --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.