Messages in this thread | | | From | Song Liu <> | Subject | Re: WARNING and PANIC in irq_matrix_free | Date | Mon, 28 May 2018 18:36:52 +0000 |
| |
> On May 28, 2018, at 7:27 AM, Thomas Gleixner <tglx@linutronix.de> wrote: > > On Mon, 28 May 2018, Tariq Toukan wrote: >> On 28/05/2018 1:53 PM, Thomas Gleixner wrote: >>> On Fri, 25 May 2018, Song Liu wrote: >>>> On Wed, May 23, 2018 at 1:49 AM, Thomas Gleixner <tglx@linutronix.de> >>>> wrote: >>>>> On Wed, 23 May 2018, Tariq Toukan wrote: >>>>>> I have your patch merged into my internal branch, it prints the >>>>>> following: >>>>>> >>>>>> [ 4898.226258] Trying to clear prev_vector: 0 >>>>>> [ 4898.226439] Trying to clear prev_vector: 0 >>>>>> >>>>>> i.e. vector(0) is lower than FIRST_EXTERNAL_VECTOR. >>>>> >>>>> Could you please enable the vector and irq matrix trace points and >>>>> capture >>>>> the trace when this happens? >>> >>> Does the patch below fix it? >>> >>> Thanks, >>> >>> tglx >>> >>> 8<------------------- >>> diff --git a/arch/x86/kernel/apic/vector.c b/arch/x86/kernel/apic/vector.c >>> index bb6f7a2148d7..54af3d4884b1 100644 >>> --- a/arch/x86/kernel/apic/vector.c >>> +++ b/arch/x86/kernel/apic/vector.c >>> @@ -148,6 +148,7 @@ static void apic_update_vector(struct irq_data *irqd, >>> unsigned int newvec, >>> * prev_vector for this and the offlined target case. >>> */ >>> apicd->prev_vector = 0; >>> + apicd->move_in_progress = false; >>> if (!apicd->vector || apicd->vector == MANAGED_IRQ_SHUTDOWN_VECTOR) >>> goto setnew; >>> /* >>> >> >> I took it into my internal branch. Will let you know. > > Note, I'd still like to see a trace w/o the patch which shows which order > of events leads to this. Even if the patch cures it, it might just paper > over it and not fixing the root cause. > > Thanks, > > tglx
I just checked trace without the patch. It looks the same as the one with the patch.
Thanks, Song
| |