| To: | "Keir Fraser" <Keir.Fraser@xxxxxxxxxxxx> |
|---|---|
| Subject: | RE: [Xen-devel] [PATCH][1/3] evtchn race condition |
| From: | "Woller, Thomas" <thomas.woller@xxxxxxx> |
| Date: | 2006年1月25日 09:56:02 -0600 |
| Cc: | xen-devel@xxxxxxxxxxxxxxxxxxx |
| Delivery-date: | 2006年1月25日 16:04:59 +0000 |
| Envelope-to: | www-data@xxxxxxxxxxxxxxxxxxx |
| List-help: | <mailto:xen-devel-request@lists.xensource.com?subject=help> |
| List-id: | Xen developer discussion <xen-devel.lists.xensource.com> |
| List-post: | <mailto:xen-devel@lists.xensource.com> |
| List-subscribe: | <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe> |
| List-unsubscribe: | <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe> |
| Sender: | xen-devel-bounces@xxxxxxxxxxxxxxxxxxx |
| Thread-index: | AcYhxsYQjOEmkwuTTaCDw9dO4eHSVgAAHPug |
| Thread-topic: | [Xen-devel] [PATCH][1/3] evtchn race condition |
> > The problem is that the hvm/io.c code is quite simply broken. > A correctly-implemented event recipient does not need to be > serialised w.r.t. evtchn_send() to work correctly. After all, > in the case of a paravirtualised guest, the recipient is not > in Xen at all! > > The correct ordering for the recipient to clear an event is: > clear evtchn_upcall_pending > clear bits in evtchn_pending_sel before acting on them > clear bits in evtchn_pending before acting on them > > So, for example, the code that checks evtchn_pending[] and > then clears a bit in evtchn_pending_sel is totally screwed. > It races evtchn_send() res-setting the evtchn_pending[] bit! > Fortunately, the comment that 'evtchn_pending_sel is shared > by other event channels' is actually false right now. The > *only* event channel a VMX domain cares about is its iopacket_port. Ah... Ok. I'll rework the hvm code with the correct ordering and give it a test... Cheers, tom _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| ||
| Previous by Date: | [Xen-devel] Re: [Xen-changelog] Export Xen driver util function symbols so that Xen drivers , Keir Fraser |
|---|---|
| Next by Date: | Re: [Xen-devel] PCI bus scan failure on 3.0.0 testing , Ryan |
| Previous by Thread: | Re: [Xen-devel] [PATCH][1/3] evtchn race condition , Keir Fraser |
| Next by Thread: | Re: [Xen-devel] [PATCH][1/3] evtchn race condition , Keir Fraser |
| Indexes: | [Date] [Thread] [Top] [All Lists] |