[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen-4.1-testing] tasklets: Switch a few tasklets to run in softirq context.
# HG changeset patch # User Keir Fraser <keir@xxxxxxx> # Date 1308826974 -3600 # Node ID 61dbf453167e0e51a4dad187852055ec1aa2968e # Parent 37764332b3786a9a475abe6d14dbe94577520559 tasklets: Switch a few tasklets to run in softirq context. There are a couple of others which may also be safe. I've converted only the most obvious one. Signed-off-by: Keir Fraser <keir@xxxxxxx> xen-unstable changeset: 23552:7b4a45a4075d xen-unstable date: Thu Jun 16 16:57:22 2011 +0100 --- diff -r 37764332b378 -r 61dbf453167e xen/arch/x86/hvm/hvm.c --- a/xen/arch/x86/hvm/hvm.c Thu Jun 23 12:02:33 2011 +0100 +++ b/xen/arch/x86/hvm/hvm.c Thu Jun 23 12:02:54 2011 +0100 @@ -971,9 +971,10 @@ if ( rc != 0 ) goto fail4; - tasklet_init(&v->arch.hvm_vcpu.assert_evtchn_irq_tasklet, - (void(*)(unsigned long))hvm_assert_evtchn_irq, - (unsigned long)v); + softirq_tasklet_init( + &v->arch.hvm_vcpu.assert_evtchn_irq_tasklet, + (void(*)(unsigned long))hvm_assert_evtchn_irq, + (unsigned long)v); v->arch.guest_context.user_regs.eflags = 2; diff -r 37764332b378 -r 61dbf453167e xen/common/trace.c --- a/xen/common/trace.c Thu Jun 23 12:02:33 2011 +0100 +++ b/xen/common/trace.c Thu Jun 23 12:02:54 2011 +0100 @@ -610,7 +610,8 @@ { send_guest_global_virq(dom0, VIRQ_TBUF); } -static DECLARE_TASKLET(trace_notify_dom0_tasklet, trace_notify_dom0, 0); +static DECLARE_SOFTIRQ_TASKLET(trace_notify_dom0_tasklet, + trace_notify_dom0, 0); /** * trace - Enters a trace tuple into the trace buffer for the current CPU. diff -r 37764332b378 -r 61dbf453167e xen/drivers/char/console.c --- a/xen/drivers/char/console.c Thu Jun 23 12:02:33 2011 +0100 +++ b/xen/drivers/char/console.c Thu Jun 23 12:02:54 2011 +0100 @@ -327,7 +327,8 @@ { send_guest_global_virq(dom0, VIRQ_CON_RING); } -static DECLARE_TASKLET(notify_dom0_con_ring_tasklet, notify_dom0_con_ring, 0); +static DECLARE_SOFTIRQ_TASKLET(notify_dom0_con_ring_tasklet, + notify_dom0_con_ring, 0); static long guest_console_write(XEN_GUEST_HANDLE(char) buffer, int count) { diff -r 37764332b378 -r 61dbf453167e xen/drivers/passthrough/io.c --- a/xen/drivers/passthrough/io.c Thu Jun 23 12:02:33 2011 +0100 +++ b/xen/drivers/passthrough/io.c Thu Jun 23 12:02:54 2011 +0100 @@ -119,8 +119,9 @@ return -ENOMEM; } memset(hvm_irq_dpci, 0, sizeof(*hvm_irq_dpci)); - tasklet_init(&hvm_irq_dpci->dirq_tasklet, - hvm_dirq_assist, (unsigned long)d); + softirq_tasklet_init( + &hvm_irq_dpci->dirq_tasklet, + hvm_dirq_assist, (unsigned long)d); hvm_irq_dpci->mirq = xmalloc_array(struct hvm_mirq_dpci_mapping, d->nr_pirqs); hvm_irq_dpci->dirq_mask = xmalloc_array(unsigned long, _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |