Messages in this thread | | | Subject | Re: WARNING and PANIC in irq_matrix_free | From | Dou Liyang <> | Date | Mon, 4 Jun 2018 19:59:38 +0800 |
| |
Hi Thomas,
At 06/04/2018 07:17 PM, Thomas Gleixner wrote: > On Mon, 4 Jun 2018, Dou Liyang wrote: >> Here, why didn't we avoid this cleanup by >> >> diff --git a/arch/x86/kernel/apic/vector.c b/arch/x86/kernel/apic/vector.c >> index a75de0792942..0cc59646755f 100644 >> --- a/arch/x86/kernel/apic/vector.c >> +++ b/arch/x86/kernel/apic/vector.c >> @@ -821,6 +821,9 @@ static void free_moved_vector(struct apic_chip_data >> *apicd) >> */ >> WARN_ON_ONCE(managed); >> >> + if (!vector) >> + return; >> + >> trace_vector_free_moved(apicd->irq, cpu, vector, managed); >> irq_matrix_free(vector_matrix, cpu, vector, managed); >> per_cpu(vector_irq, cpu)[vector] = VECTOR_UNUSED; >> >> Is there something I didn't consider with? ;-) > > Well, that just prevents the warning, but the hlist is already > corrupted. So you'd just cure the symptom ... >
I see.
> I'm about to send a patch series which addresses that. Just need to finish > writing changelogs. >
Thank you for telling me that.
Thanks, dou
| |