Re: [patch 00/47] Sparse irq rework

From: Yinghai Lu
Date: Sat Oct 09 2010 - 03:06:11 EST


On 10/08/2010 11:10 PM, Thomas Gleixner wrote:
> On Fri, 8 Oct 2010, Yinghai Lu wrote:
>
>> On 10/08/2010 02:54 PM, Thomas Gleixner wrote:
>>> On Fri, 8 Oct 2010, Thomas Gleixner wrote:
>>>
>>>> On Wed, 6 Oct 2010, Yinghai Lu wrote:
>>>>> On 10/06/2010 09:01 PM, Thomas Gleixner wrote:
>>>>>> Well, I'm not too happy about this preallocated stuff anyway, which is
>>>>>> the reason for the warning below.
>>>>>>
>>>>>>> [ 80.726176] WARNING: at drivers/pci/intr_remapping.c:67 irq_2_iommu_alloc+0x52/0xdc()
>>>>>>> [ 80.745935] Hardware name: Sun Fire X4800
>>>>>>> [ 80.746179] irq_2_iommu!=NULL irq 8
>>>>>>
>>>>>
>>>>> no, irq_2_iommu are all dynamically allocated even for irq < 16.
>>>>
>>>> I know. I was talking about the preallocated irq descriptors and the
>>>> handling of it in general.
>>>>
>>>> Nevertheless, that irq_2_iommu stuff does not need it's own allocation
>>>> function. It's bound to a specific irq_cfg anyway, so the next logical
>>>> step is to move irq_2_iommu into struct irq_cfg and get rid of the
>>>> extra allocation/free in intr_remapping.c.
>>>
>>> Forgot to say, that I updated the git tree with all the fallout
>>> fixes.
>>>
>>> git://git.kernel.org/pub/scm/linux/kernel/git/tglx/linux-2.6-sparse-irq.git master
>>>
>>> Can you please retest ?
>>>
>>
>> one warning and two panics
>>
>> [ 37.369332] ------------[ cut here ]------------
>> [ 37.383782] WARNING: at drivers/pci/intr_remapping.c:67 irq_2_iommu_alloc+0x52/0xdc()
>> [ 37.384463] Hardware name: Sun Fire X4800
>> [ 37.403803] irq_2_iommu!=NULL irq 9
>> [ 37.404054] Modules linked in:
>> [ 37.404311] Pid: 1, comm: swapper Not tainted 2.6.36-rc7-tip-yh-01944-ge8a4c5f-dirty #171
>
> Hmm, so that interrupt is already set up in the iommmu.
>
>> [ 59.429741] BUG: unable to handle kernel NULL pointer dereference at (null)
>> [ 59.449366] IP: [<ffffffff8147d715>] acpi_pci_irq_find_prt_entry+0x85/0xb1
>
> I can hardly see how this is related to the irq work.
>
>> [ 71.076886] Pid: 1, comm: swapper Tainted: G W 2.6.36-rc7-tip-yh-01944-ge8a4c5f-dirty #171 /Sun Fire x4800
>> [ 71.096947] RIP: 0010:[<ffffffff8141e232>] [<ffffffff8141e232>] strcmp+0x4/0x21
>
> Ditto.

don't know.

but without merging your branch, those problems don't come out.

only thing i can think about that you real free irq code could stress or expose other subsystem's bug etc.

Yinghai
--
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/