Eric Dumazet
c5ae7d4192
ipv4: must use rcu protection while calling fib_lookup
...
Following lockdep splat was reported by Pavel Roskin :
[ 1570.586223] ===============================
[ 1570.586225] [ INFO: suspicious RCU usage. ]
[ 1570.586228] 3.6.0-rc3-wl-main #98 Not tainted
[ 1570.586229] -------------------------------
[ 1570.586231] /home/proski/src/linux/net/ipv4/route.c:645 suspicious rcu_dereference_check() usage!
[ 1570.586233]
[ 1570.586233] other info that might help us debug this:
[ 1570.586233]
[ 1570.586236]
[ 1570.586236] rcu_scheduler_active = 1, debug_locks = 0
[ 1570.586238] 2 locks held by Chrome_IOThread/4467:
[ 1570.586240] #0 : (slock-AF_INET){+.-...}, at: [<ffffffff814f2c0c>] release_sock+0x2c/0xa0
[ 1570.586253] #1 : (fnhe_lock){+.-...}, at: [<ffffffff815302fc>] update_or_create_fnhe+0x2c/0x270
[ 1570.586260]
[ 1570.586260] stack backtrace:
[ 1570.586263] Pid: 4467, comm: Chrome_IOThread Not tainted 3.6.0-rc3-wl-main #98
[ 1570.586265] Call Trace:
[ 1570.586271] [<ffffffff810976ed>] lockdep_rcu_suspicious+0xfd/0x130
[ 1570.586275] [<ffffffff8153042c>] update_or_create_fnhe+0x15c/0x270
[ 1570.586278] [<ffffffff815305b3>] __ip_rt_update_pmtu+0x73/0xb0
[ 1570.586282] [<ffffffff81530619>] ip_rt_update_pmtu+0x29/0x90
[ 1570.586285] [<ffffffff815411dc>] inet_csk_update_pmtu+0x2c/0x80
[ 1570.586290] [<ffffffff81558d1e>] tcp_v4_mtu_reduced+0x2e/0xc0
[ 1570.586293] [<ffffffff81553bc4>] tcp_release_cb+0xa4/0xb0
[ 1570.586296] [<ffffffff814f2c35>] release_sock+0x55/0xa0
[ 1570.586300] [<ffffffff815442ef>] tcp_sendmsg+0x4af/0xf50
[ 1570.586305] [<ffffffff8156fc60>] inet_sendmsg+0x120/0x230
[ 1570.586308] [<ffffffff8156fb40>] ? inet_sk_rebuild_header+0x40/0x40
[ 1570.586312] [<ffffffff814f4bdd>] ? sock_update_classid+0xbd/0x3b0
[ 1570.586315] [<ffffffff814f4c50>] ? sock_update_classid+0x130/0x3b0
[ 1570.586320] [<ffffffff814ec435>] do_sock_write+0xc5/0xe0
[ 1570.586323] [<ffffffff814ec4a3>] sock_aio_write+0x53/0x80
[ 1570.586328] [<ffffffff8114bc83>] do_sync_write+0xa3/0xe0
[ 1570.586332] [<ffffffff8114c5a5>] vfs_write+0x165/0x180
[ 1570.586335] [<ffffffff8114c805>] sys_write+0x45/0x90
[ 1570.586340] [<ffffffff815d2722>] system_call_fastpath+0x16/0x1b
Signed-off-by: Eric Dumazet <edumazet@google.com>
Reported-by: Pavel Roskin <proski@gnu.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
2012-08-30 13:33:08 -04:00
..
2012-07-10 23:13:45 -07:00
2012-05-15 20:23:16 -04:00
2012-08-14 14:33:32 -07:00
2012-07-10 23:13:45 -07:00
2012-08-15 21:36:30 -07:00
2012-07-19 11:17:30 -07:00
2012-08-08 16:04:04 -07:00
2012-08-15 21:36:31 -07:00
2012-08-15 15:09:41 -07:00
2012-08-20 02:47:49 -07:00
2012-07-10 22:36:17 +02:00
2012-08-21 15:55:27 -07:00
2012-08-29 15:03:23 -04:00
2012-07-10 23:13:45 -07:00
2012-08-15 21:36:31 -07:00
2012-07-31 14:41:38 -07:00
2012-05-21 20:27:36 -07:00
2012-05-09 20:49:19 -04:00
2012-07-19 10:48:00 -07:00
2012-07-16 22:52:02 -07:00
2012-08-30 13:33:08 -04:00
2012-08-20 03:03:33 -07:00
2012-07-19 10:48:00 -07:00
2012-07-16 23:23:52 -07:00
2012-06-15 15:30:15 -07:00
2012-04-15 12:44:40 -04:00
2012-08-30 12:31:03 -04:00
2012-05-17 18:45:20 -04:00
2012-08-15 21:36:31 -07:00
2012-08-23 09:51:15 -04:00
2012-07-12 07:54:45 -07:00
2012-08-20 02:44:29 -07:00
2012-03-22 19:29:57 -04:00
2012-08-24 13:36:09 -04:00
2012-04-20 21:22:30 -04:00
2012-07-20 12:30:48 -04:00
2012-07-27 13:45:51 -07:00
2012-08-23 09:27:12 -07:00
2012-06-17 16:29:38 -07:00
2012-07-23 01:01:44 -07:00
2012-06-06 15:18:17 -04:00
2012-04-20 21:22:30 -04:00
2012-07-10 23:56:33 -07:00
2012-08-16 14:54:44 -07:00
2012-07-31 18:42:47 -07:00
2012-07-31 19:25:39 -07:00
2012-07-13 19:34:43 -04:00
2012-08-21 14:53:01 -07:00
2012-07-24 13:55:21 -07:00
2012-04-15 12:44:40 -04:00
2012-08-06 14:29:58 -04:00
2012-07-10 23:13:45 -07:00
2012-08-20 02:56:56 -07:00
2012-07-22 17:50:49 -07:00
2012-05-21 12:50:12 -07:00
2012-05-18 01:35:08 -04:00
2012-08-15 21:36:31 -07:00
2012-05-15 20:14:35 -04:00