Wind River Support Network

HomeDefectsLIN6-9806
Fixed

LIN6-9806 : Bug report - LOCKDEP DEADLOCK with high load on ssh terminal

Created: Apr 28, 2015    Updated: Dec 3, 2018
Resolved Date: Oct 29, 2015
Found In Version: 6.0.0.16
Fix Version: 6.0.0.26
Severity: Standard
Applicable for: Wind River Linux 6
Component/s: Kernel

Description

LOCKDEP INFO splat when having a high load on an SSH connected terminal. 
Have not looked into details on this one, but the splat should not 
happen regardless. 

Br, 
David 

root@du1:/sys/kernel/debug/tracing# uname -a 
Linux du1 3.10.55-ltsi-rt55-wrlp600.16_8.8.1.45_3 #4 SMP PREEMPT RT Tue 
Apr 14 17:41:38 CEST 2015 armv7l GNU/Linux 

[ 230.789277] ============================================= 
[ 230.789279] [ INFO: possible recursive locking detected ] 
[ 230.789284] 3.10.55-ltsi-rt55-wrlp600.16_8.8.1.45_3 #4 Tainted: 
G C 
[ 230.789285] --------------------------------------------- 
[ 230.789288] sshd/7647 is trying to acquire lock: 
[ 230.789307] (&ldata->output_lock){+.+...}, at: [<c072373c>] 
process_echoes+0x4c/0x2bc 
[ 230.789309] 
[ 230.789309] but task is already holding lock: 
[ 230.789319] (&ldata->output_lock){+.+...}, at: [<c0724040>] 
n_tty_write+0x364/0x4a4 
[ 230.789321] 
[ 230.789321] other info that might help us debug this: 
[ 230.789322] Possible unsafe locking scenario: 
[ 230.789322] 
[ 230.789324] CPU0 
[ 230.789325] ---- 
[ 230.789329] lock(&ldata->output_lock); 
[ 230.789332] lock(&ldata->output_lock); 
[ 230.789334] 
[ 230.789334] *** DEADLOCK *** 
[ 230.789334] 
[ 230.789335] May be due to missing lock nesting notation 
[ 230.789335] 
[ 230.789338] 2 locks held by sshd/7647: 
[ 230.789351] #0: (&tty->atomic_write_lock){+.+.+.}, at: [<c07209d0>] 
tty_write_lock+0x24/0x64 
[ 230.789361] #1: (&ldata->output_lock){+.+...}, at: [<c0724040>] 
n_tty_write+0x364/0x4a4 
[ 230.789362] 
[ 230.789362] stack backtrace: 
[ 230.789366] CPU: 0 PID: 7647 Comm: sshd Tainted: G C 
3.10.55-ltsi-rt55-wrlp600.16_8.8.1.45_3 #4 
[ 230.789379] [<c04179d0>] (unwind_backtrace+0x0/0xf8) from 
[<c041382c>] (show_stack+0x20/0x24) 
[ 230.789387] [<c041382c>] (show_stack+0x20/0x24) from [<c09664e8>] 
(dump_stack+0x24/0x28) 
[ 230.789398] [<c09664e8>] (dump_stack+0x24/0x28) from [<c0486e34>] 
(validate_chain.isra.31+0xe64/0x12c4) 
[ 230.789407] [<c0486e34>] (validate_chain.isra.31+0xe64/0x12c4) from 
[<c0489aa4>] (__lock_acquire+0x400/0xc34) 
[ 230.789415] [<c0489aa4>] (__lock_acquire+0x400/0xc34) from 
[<c048a9ec>] (lock_acquire+0xac/0x248) 
[ 230.789424] [<c048a9ec>] (lock_acquire+0xac/0x248) from [<c0969fec>] 
(_mutex_lock+0x3c/0x4c) 
[ 230.789431] [<c0969fec>] (_mutex_lock+0x3c/0x4c) from [<c072373c>] 
(process_echoes+0x4c/0x2bc) 
[ 230.789437] [<c072373c>] (process_echoes+0x4c/0x2bc) from 
[<c0725444>] (n_tty_receive_buf+0x8f4/0x1074) 
[ 230.789444] [<c0725444>] (n_tty_receive_buf+0x8f4/0x1074) from 
[<c07296b0>] (flush_to_ldisc+0x120/0x164) 
[ 230.789450] [<c07296b0>] (flush_to_ldisc+0x120/0x164) from 
[<c0729740>] (tty_flip_buffer_push+0x4c/0x50) 
[ 230.789458] [<c0729740>] (tty_flip_buffer_push+0x4c/0x50) from 
[<c072adf0>] (pty_write+0x64/0x74) 
[ 230.789463] [<c072adf0>] (pty_write+0x64/0x74) from [<c0724058>] 
(n_tty_write+0x37c/0x4a4) 
[ 230.789469] [<c0724058>] (n_tty_write+0x37c/0x4a4) from [<c0720b20>] 
(tty_write+0x110/0x284) 
[ 230.789481] [<c0720b20>] (tty_write+0x110/0x284) from [<c0540d0c>] 
(vfs_write+0xc4/0x1a4) 
[ 230.789489] [<c0540d0c>] (vfs_write+0xc4/0x1a4) from [<c05412b8>] 
(SyS_write+0x4c/0x88) 
[ 230.789498] [<c05412b8>] (SyS_write+0x4c/0x88) from [<c040ed00>] 
(ret_fast_syscall+0x0/0x48)

Other Downloads


Live chat
Online