[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20160120114430.GA25010@twins.programming.kicks-ass.net>
Date: Wed, 20 Jan 2016 12:44:30 +0100
From: Peter Zijlstra <peterz@...radead.org>
To: Dmitry Vyukov <dvyukov@...gle.com>
Cc: One Thousand Gnomes <gnomes@...rguk.ukuu.org.uk>,
Ingo Molnar <mingo@...hat.com>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Jiri Slaby <jslaby@...e.com>,
LKML <linux-kernel@...r.kernel.org>,
J Freyensee <james_p_freyensee@...ux.intel.com>,
syzkaller <syzkaller@...glegroups.com>,
Kostya Serebryany <kcc@...gle.com>,
Alexander Potapenko <glider@...gle.com>,
Sasha Levin <sasha.levin@...cle.com>,
Eric Dumazet <edumazet@...gle.com>
Subject: Re: tty: deadlock between n_tracerouter_receivebuf and flush_to_ldisc
On Wed, Jan 20, 2016 at 10:36:01AM +0100, Dmitry Vyukov wrote:
> +Peter, Ingo, can you please suggest a way to annotate this locking
> pattern to avoid lockdep false positive?
No, because I haven't a clue what the actual problem is.
The report is fairly clear on how:
routelock
&port->buf.lock/1
&o_tty->termios_rwsem/1
&buf->lock
gets established, and shows where we try:
&buf->lock
routelock
Which gives a circle, ergo deadlock.
Show which link is wrong and why, and I can suggest ways of annotating
that.
Powered by blists - more mailing lists