Re: [tip:x86/apic] genirq: Prevent crash in irq_move_irq()
From: Thomas Gleixner
Date: Tue Jun 16 2015 - 04:13:31 EST
On Tue, 16 Jun 2015, Jiang Liu wrote:
> On 2015/6/16 15:31, tip-bot for Jiang Liu wrote:
> > Commit-ID: 458526ec81d755dfaa17f3d863302afe6fbefca0
> > Gitweb: http://git.kernel.org/tip/458526ec81d755dfaa17f3d863302afe6fbefca0
> > Author: Jiang Liu <jiang.liu@xxxxxxxxxxxxxxx>
> > AuthorDate: Mon, 1 Jun 2015 16:05:11 +0800
> > Committer: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
> > CommitDate: Tue, 16 Jun 2015 09:23:28 +0200
> >
> > genirq: Prevent crash in irq_move_irq()
> >
> > The functions irq_move_irq() and irq_move_masked_irq() expect that the
> > caller passes the top-level irq_data to them when hierarchical
> > irqdomains are enabled. But that's not true when called from
> > apic_ack_edge(), which results in a null pointer dereference by
> > idata->chip->irq_mask(idata).
> >
> > Instead of fixing callers to passing top-level irq_data, we rather
> > change irq_move_irq()/irq_move_masked_irq() to accept any irq_data.
> >
> > Fixes: 52f518a3a7c 'x86/MSI: Use hierarchical irqdomains to manage MSI interrupts'
> Hi Thomas,
> This patch has dependency on patch "[Patch v3 01/36] genirq:
> Enhance irq_data_to_desc() to support hierarchy irqdomain" in the
> same patch set, otherwise irq_data_to_desc(idata) may return invalid
> irq_desc and may cause memory crash.
That's why you should not mix bug fixes with performance improvement series.
Thanks,
tglx
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/