diff options
Diffstat (limited to 'arch/x86/kernel/apic/io_apic.c')
| -rw-r--r-- | arch/x86/kernel/apic/io_apic.c | 4 | 
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/x86/kernel/apic/io_apic.c b/arch/x86/kernel/apic/io_apic.c index 7cc0a721f62..fadcd743a74 100644 --- a/arch/x86/kernel/apic/io_apic.c +++ b/arch/x86/kernel/apic/io_apic.c @@ -2430,13 +2430,12 @@ static void ack_apic_level(struct irq_data *data)  {  	struct irq_cfg *cfg = data->chip_data;  	int i, do_unmask_irq = 0, irq = data->irq; -	struct irq_desc *desc = irq_to_desc(irq);  	unsigned long v;  	irq_complete_move(cfg);  #ifdef CONFIG_GENERIC_PENDING_IRQ  	/* If we are moving the irq we need to mask it */ -	if (unlikely(desc->status & IRQ_MOVE_PENDING)) { +	if (unlikely(irq_to_desc(irq)->status & IRQ_MOVE_PENDING)) {  		do_unmask_irq = 1;  		mask_ioapic(cfg);  	} @@ -3413,6 +3412,7 @@ dmar_msi_set_affinity(struct irq_data *data, const struct cpumask *mask,  	msg.data |= MSI_DATA_VECTOR(cfg->vector);  	msg.address_lo &= ~MSI_ADDR_DEST_ID_MASK;  	msg.address_lo |= MSI_ADDR_DEST_ID(dest); +	msg.address_hi = MSI_ADDR_BASE_HI | MSI_ADDR_EXT_DEST_ID(dest);  	dmar_msi_write(irq, &msg);  |