Re: [PATCH] RCU: don't turn off lockdep when find suspicious rcu_dereference_check() usage
From: Miles Lane
Date: Sun Apr 25 2010 - 16:20:26 EST
> I am down to seeing three suspicious rcu_dereference_check traces when
> I apply this patch and all the previous patches to 2.6.34-rc5-git6.
>
> 1. The "__sched_setscheduler+0x19d/0x300" trace.
> 2. The two "is_swiotlb_buffer+0x2e/0x3b" traces (waiting to see
> Johannes' patch show up in a Linux snapshot)
>
> Did I miss a patch for the setscheduler issue?
Hmm. I am still seeing these two messages as well.
[ 83.363146] [ INFO: suspicious rcu_dereference_check() usage. ]
[ 83.363148] ---------------------------------------------------
[ 83.363151] include/net/inet_timewait_sock.h:227 invoked
rcu_dereference_check() without protection!
[ 83.363154]
[ 83.363155] other info that might help us debug this:
[ 83.363156]
[ 83.363158]
[ 83.363159] rcu_scheduler_active = 1, debug_locks = 1
[ 83.363162] 2 locks held by gwibber-service/5076:
[ 83.363164] #0: (&p->lock){+.+.+.}, at: [<ffffffff8110534a>]
seq_read+0x37/0x381
[ 83.363176] #1: (&(&hashinfo->ehash_locks[i])->rlock){+.-...},
at: [<ffffffff813ddcd5>] established_get_next+0xc4/0x132
[ 83.363186]
[ 83.363187] stack backtrace:
[ 83.363191] Pid: 5076, comm: gwibber-service Not tainted 2.6.34-rc5-git6 #27
[ 83.363194] Call Trace:
[ 83.363202] [<ffffffff81068086>] lockdep_rcu_dereference+0x9d/0xa5
[ 83.363207] [<ffffffff813dc998>] twsk_net+0x4f/0x57
[ 83.363212] [<ffffffff813ddc65>] established_get_next+0x54/0x132
[ 83.363216] [<ffffffff813dde47>] tcp_seq_next+0x5d/0x6a
[ 83.363221] [<ffffffff81105599>] seq_read+0x286/0x381
[ 83.363226] [<ffffffff81105313>] ? seq_read+0x0/0x381
[ 83.363231] [<ffffffff8113503c>] proc_reg_read+0x8d/0xac
[ 83.363236] [<ffffffff810ebf14>] vfs_read+0xa6/0x103
[ 83.363241] [<ffffffff810ec027>] sys_read+0x45/0x69
[ 83.363246] [<ffffffff81002b6b>] system_call_fastpath+0x16/0x1b
[ 84.660302] [ INFO: suspicious rcu_dereference_check() usage. ]
[ 84.660304] ---------------------------------------------------
[ 84.660308] include/net/inet_timewait_sock.h:227 invoked
rcu_dereference_check() without protection!
[ 84.660311]
[ 84.660312] other info that might help us debug this:
[ 84.660313]
[ 84.660315]
[ 84.660316] rcu_scheduler_active = 1, debug_locks = 1
[ 84.660319] no locks held by gwibber-service/5081.
[ 84.660321]
[ 84.660322] stack backtrace:
[ 84.660325] Pid: 5081, comm: gwibber-service Not tainted 2.6.34-rc5-git6 #27
[ 84.660328] Call Trace:
[ 84.660339] [<ffffffff81068086>] lockdep_rcu_dereference+0x9d/0xa5
[ 84.660345] [<ffffffff813cad6f>] twsk_net+0x4f/0x57
[ 84.660350] [<ffffffff813cb18f>] __inet_twsk_hashdance+0x50/0x158
[ 84.660355] [<ffffffff813e0bb9>] tcp_time_wait+0x1c1/0x24b
[ 84.660360] [<ffffffff813d3d97>] tcp_fin+0x83/0x162
[ 84.660364] [<ffffffff813d4727>] tcp_data_queue+0x1ff/0xa1e
[ 84.660370] [<ffffffff810496aa>] ? mod_timer+0x1e/0x20
[ 84.660375] [<ffffffff813d8363>] tcp_rcv_state_process+0x89d/0x8f2
[ 84.660381] [<ffffffff813943bb>] ? release_sock+0x30/0x10b
[ 84.660386] [<ffffffff813de772>] tcp_v4_do_rcv+0x2de/0x33f
[ 84.660391] [<ffffffff8139440d>] release_sock+0x82/0x10b
[ 84.660395] [<ffffffff813ce875>] tcp_close+0x1b5/0x37e
[ 84.660401] [<ffffffff813ecdb7>] inet_release+0x50/0x57
[ 84.660405] [<ffffffff81391ae4>] sock_release+0x1a/0x66
[ 84.660410] [<ffffffff81391b52>] sock_close+0x22/0x26
[ 84.660415] [<ffffffff810ece07>] __fput+0x120/0x1cd
[ 84.660420] [<ffffffff810ecec9>] fput+0x15/0x17
[ 84.660424] [<ffffffff810e9d41>] filp_close+0x63/0x6d
[ 84.660428] [<ffffffff810e9e22>] sys_close+0xd7/0x111
[ 84.660434] [<ffffffff81002b6b>] system_call_fastpath+0x16/0x1b
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/