[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20181109064740.GE599@jagdpanzerIV>
Date: Fri, 9 Nov 2018 15:47:40 +0900
From: Sergey Senozhatsky <sergey.senozhatsky.work@...il.com>
To: Daniel Wang <wonderfly@...gle.com>
Cc: sergey.senozhatsky.work@...il.com, Petr Mladek <pmladek@...e.com>,
rostedt@...dmis.org, stable@...r.kernel.org,
Alexander.Levin@...rosoft.com, akpm@...ux-foundation.org,
byungchul.park@....com, dave.hansen@...el.com, hannes@...xchg.org,
jack@...e.cz, linux-kernel@...r.kernel.org, linux-mm@...ck.org,
Mathieu Desnoyers <mathieu.desnoyers@...icios.com>,
Mel Gorman <mgorman@...e.de>, mhocko@...nel.org, pavel@....cz,
penguin-kernel@...ove.sakura.ne.jp, peterz@...radead.org,
tj@...nel.org, torvalds@...ux-foundation.org, vbabka@...e.cz,
Cong Wang <xiyou.wangcong@...il.com>,
Peter Feiner <pfeiner@...gle.com>
Subject: Re: 4.14 backport request for dbdda842fe96f: "printk: Add console
owner and waiter logic to load balance console writes"
On (11/01/18 09:05), Daniel Wang wrote:
> > Another deadlock scenario could be the following one:
> >
> > printk()
> > console_trylock()
> > down_trylock()
> > raw_spin_lock_irqsave(&sem->lock, flags)
> > <NMI>
> > panic()
> > console_flush_on_panic()
> > console_trylock()
> > raw_spin_lock_irqsave(&sem->lock, flags) // deadlock
> >
> > There are no patches addressing this one at the moment. And it's
> > unclear if you are hitting this scenario.
>
> I am not sure, but Steven's patches did make the deadlock I saw go away...
You certainly can find cases when "busy spin on console_sem owner" logic
can reduce some possibilities.
But spin_lock(&lock); NMI; spin_lock(&lock); code is still in the kernel.
> A little swamped by other things lately but I'll run a test with it.
> If it works, would you recommend taking your patch alone
Let's first figure out if it works.
-ss
Powered by blists - more mailing lists