All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ian Jackson <Ian.Jackson@eu.citrix.com>
To: David Vrabel <david.vrabel@citrix.com>
Cc: "xen-devel@lists.xensource.com" <xen-devel@lists.xensource.com>,
	Wei Liu <wei.liu2@citrix.com>
Subject: Re: FIFO-based event channel ABI design (draft B)
Date: Tue, 19 Feb 2013 18:39:01 +0000	[thread overview]
Message-ID: <20771.50885.702521.722255@mariner.uk.xensource.com> (raw)
In-Reply-To: <511E46FD.3010605@citrix.com>

David Vrabel writes ("[Xen-devel] FIFO-based event channel ABI design (draft B)"):
> Event State Machine
> -------------------
> 
> Event channels are bound to a port in the domain using the existing
> ABI.
> 
> A bound event may be in one of three main states.
> 
> State    Abbrev.  PML Bits  Meaning
> -----    -------  --------  -------
> BOUND    B        000       The event is bound but not pending.
> PENDING  P        100       The event has been raised and not yet
> acknowledged.
> LINKED   L        101       The event is on an event queue.
> 
> Additionally, events may be UNMASKED or MASKED (M).
> 
> ![\label{events_sm}Event State Machine](event-sm.pdf)

This high-level state machine description doesn't capture the
transient states which exist when Xen and/or the guest need to update
multiple words at once.

In order to check that this protocol is correct, I think you should
draw a state diagram which includes these transient states, and verify
that the edges all operate as intended.

Ian.

      parent reply	other threads:[~2013-02-19 18:39 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-02-15 14:32 FIFO-based event channel ABI design (draft B) David Vrabel
2013-02-15 15:05 ` Jan Beulich
2013-02-15 15:17   ` David Vrabel
2013-02-15 15:36     ` Jan Beulich
2013-02-15 18:19 ` Wei Liu
2013-02-15 18:46   ` David Vrabel
2013-02-15 19:04     ` Wei Liu
2013-02-18  8:10     ` Jan Beulich
2013-02-18 15:19 ` Ian Campbell
2013-02-18 20:16   ` David Vrabel
2013-02-18 20:50     ` Wei Liu
2013-02-18 20:21   ` Keir Fraser
2013-02-19 18:39 ` Ian Jackson [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=20771.50885.702521.722255@mariner.uk.xensource.com \
    --to=ian.jackson@eu.citrix.com \
    --cc=david.vrabel@citrix.com \
    --cc=wei.liu2@citrix.com \
    --cc=xen-devel@lists.xensource.com \
    /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.