This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
Home Products Support Community News


[Xen-changelog] Add a comment to tricky corner case in evtchn_close().

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] Add a comment to tricky corner case in evtchn_close().
From: Xen patchbot -unstable <patchbot-unstable@xxxxxxxxxxxxxxxxxxx>
Date: Sun, 04 Dec 2005 12:20:06 +0000
Delivery-date: Sun, 04 Dec 2005 12:20:17 +0000
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-changelog-request@lists.xensource.com?subject=help>
List-id: BK change log <xen-changelog.lists.xensource.com>
List-post: <mailto:xen-changelog@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=unsubscribe>
Reply-to: xen-devel@xxxxxxxxxxxxxxxxxxx
Sender: xen-changelog-bounces@xxxxxxxxxxxxxxxxxxx
# HG changeset patch
# User kaf24@xxxxxxxxxxxxxxxxxxxx
# Node ID 99b9046a8df224b7de7e2be6c3719c081b4af0e3
# Parent  8098cc1daac47f5ac371947a669b9ba15c6cf3f4
Add a comment to tricky corner case in evtchn_close().

Signed-off-by: Rusty Russell <rusty@xxxxxxxxxxxxxxx>
Signed-off-by: Keir Fraser <keir@xxxxxxxxxxxxx>

diff -r 8098cc1daac4 -r 99b9046a8df2 xen/common/event_channel.c
--- a/xen/common/event_channel.c        Sun Dec  4 00:52:38 2005
+++ b/xen/common/event_channel.c        Sun Dec  4 10:54:04 2005
@@ -344,6 +344,14 @@
         else if ( d2 != chn1->u.interdomain.remote_dom )
+            /*
+             * We can only get here if the port was closed and re-bound after
+             * unlocking d1 but before locking d2 above. We could retry but
+             * it is easier to return the same error as if we had seen the
+             * port in ECS_CLOSED. It must have passed through that state for
+             * us to end up here, so it's a valid error to return.
+             */
+            BUG_ON(d1 != current->domain);
             rc = -EINVAL;
             goto out;

Xen-changelog mailing list

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-changelog] Add a comment to tricky corner case in evtchn_close()., Xen patchbot -unstable <=