Re: [Bugfix v2 4/5] x86/irq: Fix a race condition between vector assigning and cleanup

2015-12-30 Thread Thomas Gleixner
On Wed, 23 Dec 2015, Jiang Liu wrote: > /* > - * Check if the irq migration is in progress. If so, we > - * haven't received the cleanup request yet for this irq. > + * Nothing to cleanup if this cpu is not set > + * in the old_domai

Re: [Bugfix v2 4/5] x86/irq: Fix a race condition between vector assigning and cleanup

2015-12-30 Thread Thomas Gleixner
On Wed, 23 Dec 2015, Jiang Liu wrote: > static void clear_irq_vector(int irq, struct apic_chip_data *data) > { > - struct irq_desc *desc; > + struct irq_desc *desc = irq_to_desc(irq); > int cpu, vector = data->cfg.vector; > > BUG_ON(!vector); > @@ -236,10 +235,6 @@ static vo

Re: [Bugfix v2 4/5] x86/irq: Fix a race condition between vector assigning and cleanup

2015-12-23 Thread Borislav Petkov
On Wed, Dec 23, 2015 at 10:13:29PM +0800, Jiang Liu wrote: > Joe Lawrence reported an use after release > issue related to x86 IRQ management code. Please refer to following > link for more information: > https://www.mail-archive.com/linux-kernel@vger.kernel.org/msg1026840.html Please use link re

[Bugfix v2 4/5] x86/irq: Fix a race condition between vector assigning and cleanup

2015-12-23 Thread Jiang Liu
Joe Lawrence reported an use after release issue related to x86 IRQ management code. Please refer to following link for more information: https://www.mail-archive.com/linux-kernel@vger.kernel.org/msg1026840.html Thomas pointed out that it's caused by a race condition between __assign_irq_vector()