Messages in this thread | | | From | Thomas Gleixner <> | Subject | Re: [PATCH v2 1/3] genirq/affinity: Add irq_update_affinity_desc() | Date | Thu, 19 Nov 2020 22:03:49 +0100 |
| |
On Thu, Nov 19 2020 at 19:56, John Garry wrote: >>>> 3) Interrupt has already been switched to managed. Double init is not >>>> really a good sign either. >>> I just tested that and case 3) would be a problem. I don't see us >>> clearing the managed flag when free'ing the interrupt. So with >>> CONFIG_DEBUG_TEST_DRIVER_REMOVE=y, we attempt this affinity update >>> twice, and error from the irqd_affinity_is_managed() check. >> That means the interrupt is not deallocated and reallocated, which does >> not make sense to me. >> > > Just mentioning a couple of things here, which could be a clue to what > is going on: > - the device is behind mbigen secondary irq controller > - the flow in the LLDD is to allocate all 128 interrupts during probe, > but we only register handlers for a subset with device managed API
Right, but if the driver is removed then the interrupts should be deallocated, right?
Thanks,
tglx
| |