search for: cpu_eoi_map

Displaying 4 results from an estimated 4 matches for "cpu_eoi_map".

2006 Apr 19
0
[patch] define and use cpu_test_and_clear() and some type checking fixes
...pirq_mask[0]) ) action->in_flight++; send_guest_pirq(d, irq); } @@ -235,7 +235,7 @@ static void __set_eoi_ready(irq_desc_t * if ( !(desc->status & IRQ_GUEST) || (action->in_flight != 0) || - !test_and_clear_bit(cpu, &action->cpu_eoi_map) ) + !cpu_test_and_clear(cpu, action->cpu_eoi_map) ) return; sp = pending_eoi_sp(cpu); @@ -285,7 +285,7 @@ static void flush_all_pending_eoi(void * ASSERT(action->ack_type == ACKTYPE_EOI); ASSERT(desc->status & IRQ_GUEST); for ( i =...
2011 Sep 16
0
[PATCH v3] Clear IRQ_GUEST in irq_desc->status when setting action to NULL.
...e(&desc->lock, flags); desc->status |= IRQ_DISABLED; + desc->status &= ~IRQ_GUEST; desc->handler->shutdown(irq); action = desc->action; desc->action = NULL; @@ -1465,8 +1466,6 @@ static irq_guest_action_t *__pirq_guest_ cpumask_t cpu_eoi_map; int i; - BUG_ON(!(desc->status & IRQ_GUEST)); - action = (irq_guest_action_t *)desc->action; irq = desc - irq_desc; _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-d...
2008 Sep 26
2
RE: [Xen-changelog] [xen-unstable] x86: Properly synchronise updates to pirq-to-vector mapping.
...); + } + + if ( pflags != NULL ) + *pflags = flags; + return desc; +} + /* Flush all ready EOIs from the top of this CPU's pending-EOI stack. */ static void flush_ready_eoi(void *unused) { @@ -342,11 +371,13 @@ static void __pirq_guest_eoi(struct doma cpumask_t cpu_eoi_map; int vector; - vector = domain_irq_to_vector(d, irq); - desc = &irq_desc[vector]; + ASSERT(local_irq_is_enabled()); + desc = domain_spin_lock_irq_desc(d, irq, NULL); + if ( desc == NULL ) + return; + action = (irq_guest_action_t *)desc->acti...
2008 Sep 23
9
Xen crash on dom0 shutdown
There is a BUG_ON() at xen/arch/x86/physdev.c:169 which appears to be dependent upon guest behavior (should close event channel before un-mapping pirq), rather than on internal hypervisor state. In 2.6.18, this likely goes unnoticed because pci_device_shutdown() only calls all the driver shutdown routines. In newer kernels, however, it also calls pci_msi_shutdown() and pci_msix_shutdown(), which