lkml.org 
[lkml]   [2015]   [Nov]   [26]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: Deadlock in n_hdlc_buf_put
From
Date
On 11/26/2015, 01:37 PM, Dmitry Vyukov wrote:
> [ 341.376188] =============================================
> [ 341.376607] [ INFO: possible recursive locking detected ]
> [ 341.376607] 4.4.0-rc1+ #117 Not tainted
> [ 341.376607] ---------------------------------------------
> [ 341.376607] syzkaller_execu/14066 is trying to acquire lock:
> [ 341.376607] (&(&list->spinlock)->rlock){......}, at:
> [<ffffffff82a9f548>] n_hdlc_buf_put+0x28/0x170
> [ 341.376607]
> [ 341.376607] but task is already holding lock:
> [ 341.376607] (&(&list->spinlock)->rlock){......}, at:
> [<ffffffff82aa1368>] n_hdlc_tty_ioctl+0x2b8/0x3f0
> [ 341.376607]
> [ 341.376607] other info that might help us debug this:
> [ 341.376607] Possible unsafe locking scenario:
> [ 341.376607]
> [ 341.376607] CPU0
> [ 341.376607] ----
> [ 341.376607] lock(&(&list->spinlock)->rlock);
> [ 341.376607] lock(&(&list->spinlock)->rlock);

Hi,

this is a lockdep false positive. The first one is tx_buf_list.spinlock,
the latter tx_free_buf_list.spinlock, both in flush_tx_queue. So we need
a lockdep annotation here.

thanks,
--
js
suse labs


\
 
 \ /
  Last update: 2015-11-26 19:41    [W:0.034 / U:0.224 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site