WARNING - OLD ARCHIVES

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/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-changelog

[Xen-changelog] [xen-4.0-testing] notify_via_xen_event_channel() takes e

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] [xen-4.0-testing] notify_via_xen_event_channel() takes explicit domain parameter.
From: "Xen patchbot-4.0-testing" <patchbot-4.0-testing@xxxxxxxxxxxxxxxxxxx>
Date: Fri, 04 Jun 2010 03:46:05 -0700
Delivery-date: Fri, 04 Jun 2010 03:52:29 -0700
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/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/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 Keir Fraser <keir.fraser@xxxxxxxxxx>
# Date 1275645055 -3600
# Node ID 2c3495f3ca84891752886b9ae7c03c42cd97efe5
# Parent  d988e6643b459098823b6312ae58d81cff43fc98
notify_via_xen_event_channel() takes explicit domain parameter.

Also remove pointless tasklet from mem_event notify path.

Signed-off-by: John Byrne <john.l.byrne@xxxxxx>
xen-unstable changeset:   21527:936f4c08eaef
xen-unstable date:        Fri Jun 04 10:25:45 2010 +0100
---
 xen/arch/ia64/vmx/vmx_support.c |    2 +-
 xen/arch/x86/hvm/hvm.c          |    2 +-
 xen/arch/x86/mm/mem_event.c     |   14 +-------------
 xen/common/event_channel.c      |    4 ++--
 xen/include/xen/event.h         |    2 +-
 xen/include/xen/sched.h         |    2 --
 6 files changed, 6 insertions(+), 20 deletions(-)

diff -r d988e6643b45 -r 2c3495f3ca84 xen/arch/ia64/vmx/vmx_support.c
--- a/xen/arch/ia64/vmx/vmx_support.c   Fri Jun 04 10:50:28 2010 +0100
+++ b/xen/arch/ia64/vmx/vmx_support.c   Fri Jun 04 10:50:55 2010 +0100
@@ -62,7 +62,7 @@ void vmx_send_assist_req(struct vcpu *v)
     }
     wmb();
     p->state = STATE_IOREQ_READY;
-    notify_via_xen_event_channel(v->arch.arch_vmx.xen_port);
+    notify_via_xen_event_channel(v->domain, v->arch.arch_vmx.xen_port);
 
     for (;;) {
         if (p->state != STATE_IOREQ_READY &&
diff -r d988e6643b45 -r 2c3495f3ca84 xen/arch/x86/hvm/hvm.c
--- a/xen/arch/x86/hvm/hvm.c    Fri Jun 04 10:50:28 2010 +0100
+++ b/xen/arch/x86/hvm/hvm.c    Fri Jun 04 10:50:55 2010 +0100
@@ -896,7 +896,7 @@ bool_t hvm_send_assist_req(struct vcpu *
      * prepare_wait_on_xen_event_channel() is an implicit barrier.
      */
     p->state = STATE_IOREQ_READY;
-    notify_via_xen_event_channel(v->arch.hvm_vcpu.xen_port);
+    notify_via_xen_event_channel(v->domain, v->arch.hvm_vcpu.xen_port);
 
     return 1;
 }
diff -r d988e6643b45 -r 2c3495f3ca84 xen/arch/x86/mm/mem_event.c
--- a/xen/arch/x86/mm/mem_event.c       Fri Jun 04 10:50:28 2010 +0100
+++ b/xen/arch/x86/mm/mem_event.c       Fri Jun 04 10:50:55 2010 +0100
@@ -33,13 +33,6 @@
 
 
 #define MEM_EVENT_RING_THRESHOLD 4
-
-
-static void mem_event_notify(struct domain *d)
-{
-    prepare_wait_on_xen_event_channel(d->mem_event.xen_port);
-    notify_via_xen_event_channel(d->mem_event.xen_port);
-}
 
 
 int mem_event_enable(struct domain *d, mfn_t ring_mfn, mfn_t shared_mfn)
@@ -63,11 +56,6 @@ int mem_event_enable(struct domain *d, m
 
     ((mem_event_shared_page_t *)d->mem_event.shared_page)->port = rc;
     d->mem_event.xen_port = rc;
-
-    /* Initialise tasklet */
-    tasklet_init(&d->mem_event.tasklet,
-                 (void(*)(unsigned long))mem_event_notify,
-                 (unsigned long)d);
 
     /* Prepare ring buffer */
     FRONT_RING_INIT(&d->mem_event.front_ring,
@@ -125,7 +113,7 @@ void mem_event_put_request(struct domain
 
     mem_event_ring_unlock(d);
 
-    tasklet_schedule(&d->mem_event.tasklet);
+    notify_via_xen_event_channel(d, d->mem_event.xen_port);
 }
 
 void mem_event_get_response(struct domain *d, mem_event_response_t *rsp)
diff -r d988e6643b45 -r 2c3495f3ca84 xen/common/event_channel.c
--- a/xen/common/event_channel.c        Fri Jun 04 10:50:28 2010 +0100
+++ b/xen/common/event_channel.c        Fri Jun 04 10:50:55 2010 +0100
@@ -986,10 +986,10 @@ void free_xen_event_channel(
 }
 
 
-void notify_via_xen_event_channel(int lport)
+void notify_via_xen_event_channel(struct domain *ld, int lport)
 {
     struct evtchn *lchn, *rchn;
-    struct domain *ld = current->domain, *rd;
+    struct domain *rd;
     int            rport;
 
     spin_lock(&ld->event_lock);
diff -r d988e6643b45 -r 2c3495f3ca84 xen/include/xen/event.h
--- a/xen/include/xen/event.h   Fri Jun 04 10:50:28 2010 +0100
+++ b/xen/include/xen/event.h   Fri Jun 04 10:50:55 2010 +0100
@@ -57,7 +57,7 @@ int guest_enabled_event(struct vcpu *v, 
 int guest_enabled_event(struct vcpu *v, int virq);
 
 /* Notify remote end of a Xen-attached event channel.*/
-void notify_via_xen_event_channel(int lport);
+void notify_via_xen_event_channel(struct domain *ld, int lport);
 
 /* Wait on a Xen-attached event channel. */
 #define wait_on_xen_event_channel(port, condition)                      \
diff -r d988e6643b45 -r 2c3495f3ca84 xen/include/xen/sched.h
--- a/xen/include/xen/sched.h   Fri Jun 04 10:50:28 2010 +0100
+++ b/xen/include/xen/sched.h   Fri Jun 04 10:50:55 2010 +0100
@@ -187,8 +187,6 @@ struct mem_event_domain
     bool_t enabled;
     /* event channel port (vcpu0 only) */
     int xen_port;
-    /* tasklet */
-    struct tasklet tasklet;
 };
  
 struct domain

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-changelog] [xen-4.0-testing] notify_via_xen_event_channel() takes explicit domain parameter., Xen patchbot-4.0-testing <=