Eric Dumazet
9750223102
udp: ipv4: must add synchronization in udp_sk_rx_dst_set()
...
Unlike TCP, UDP input path does not hold the socket lock.
Before messing with sk->sk_rx_dst, we must use a spinlock, otherwise
multiple cpus could leak a refcount.
This patch also takes care of renewing a stale dst entry.
(When the sk->sk_rx_dst would not be used by IP early demux)
Fixes: 421b3885bf6d ("udp: ipv4: Add udp early demux")
Signed-off-by: Eric Dumazet <edumazet@google.com>
Cc: Shawn Bohrer <sbohrer@rgmadvisors.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2013-12-11 20:21:10 -05:00
..
2013-11-18 12:53:36 +01:00
2013-11-14 16:30:30 +09:00
2013-06-03 00:07:42 -07:00
2013-09-03 21:41:43 -04:00
2012-07-18 09:01:12 -07:00
2013-11-14 17:31:14 -05:00
2013-08-09 11:27:46 -07:00
2013-10-29 06:39:42 +01:00
2013-10-18 13:53:59 -04:00
2013-10-19 19:12:11 -04:00
2013-12-10 17:54:23 -05:00
2013-10-18 14:42:15 -04:00
2013-11-15 09:32:20 +09:00
2013-10-19 19:36:18 -04:00
2013-10-19 19:36:19 -04:00
2013-09-28 15:21:52 -07:00
2013-09-30 22:28:56 -07:00
2013-10-10 14:37:35 -04:00
2013-10-17 15:02:02 -04:00
2013-10-23 17:01:41 -04:00
2013-10-19 19:45:35 -04:00
2013-03-15 09:12:25 -04:00
2013-10-08 23:19:24 -04:00
2013-09-19 14:11:15 -04:00
2012-10-08 17:42:36 -04:00
2013-10-23 17:01:40 -04:00
2013-08-16 15:37:26 -07:00
2013-08-08 22:24:59 -07:00
2013-03-12 05:35:39 -04:00
2013-11-05 21:52:27 -05:00
2013-11-23 14:46:23 -08:00
2013-10-19 19:36:18 -04:00
2013-11-19 15:50:47 -08:00
2013-11-19 15:50:57 -05:00
2013-06-03 00:07:42 -07:00
2013-04-02 14:35:33 -04:00
2013-10-19 19:36:19 -04:00
2013-09-19 14:11:15 -04:00
2013-09-03 21:41:43 -04:00
2013-07-03 14:37:39 -07:00
2013-04-18 20:27:55 +02:00
2013-11-29 16:37:36 -05:00
2013-08-16 15:37:26 -07:00
2013-11-28 18:47:51 -05:00
2013-11-23 14:46:23 -08:00
2013-11-20 15:28:44 -05:00
2013-10-19 19:45:35 -04:00
2013-11-04 19:57:59 -05:00
2013-11-04 19:57:59 -05:00
2013-11-04 19:57:59 -05:00
2013-11-04 19:57:59 -05:00
2012-01-11 12:56:06 -08:00
2013-11-04 19:57:47 -05:00
2013-11-04 19:57:59 -05:00
2013-11-04 19:57:59 -05:00
2013-11-04 19:57:59 -05:00
2013-11-04 19:57:59 -05:00
2013-11-04 19:57:59 -05:00
2013-11-29 16:37:36 -05:00
2013-11-04 19:57:59 -05:00
2013-12-05 21:01:01 -05:00
2013-11-19 16:39:05 -05:00
2013-10-09 00:01:25 -04:00
2013-11-23 14:46:19 -08:00
2013-11-19 16:14:20 -05:00
2013-10-09 00:01:25 -04:00
2013-11-04 19:57:59 -05:00
2013-10-29 22:50:41 -04:00
2013-11-04 19:57:59 -05:00
2013-10-19 19:12:11 -04:00
2013-11-04 19:57:59 -05:00
2013-03-21 11:47:50 -04:00
2013-11-04 19:57:59 -05:00
2013-11-20 13:20:24 -08:00
2012-03-11 23:42:51 -07:00
2013-04-19 14:57:56 -04:00
2013-10-19 19:12:11 -04:00
2013-10-19 19:36:19 -04:00
2013-12-11 20:21:10 -05:00
2012-03-12 17:05:21 -07:00
2013-02-15 15:10:37 -05:00
2012-02-23 16:50:45 -05:00
2013-09-30 15:24:57 -04:00
2013-08-26 12:40:53 +02:00
2013-11-01 07:08:46 +01:00
2013-08-14 13:07:12 +02:00
2013-05-31 17:19:05 -07:00