Willem de Bruijn
afa0925c6f
packet: unconditionally free po->rollover
...
Rollover used to use a complex RCU mechanism for assignment, which had
a race condition. The below patch fixed the bug and greatly simplified
the logic.
The feature depends on fanout, but the state is private to the socket.
Fanout_release returns f only when the last member leaves and the
fanout struct is to be freed.
Destroy rollover unconditionally, regardless of fanout state.
Fixes: 57f015f5ec
("packet: fix crash in fanout_demux_rollover()")
Reported-by: syzbot <syzkaller@googlegroups.com >
Diagnosed-by: Dmitry Vyukov <dvyukov@google.com >
Signed-off-by: Willem de Bruijn <willemb@google.com >
Signed-off-by: David S. Miller <davem@davemloft.net >
2019-06-02 18:10:14 -07:00
..
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-22 08:28:16 -07:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-09 09:44:17 -07:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 11:28:45 +02:00
2019-05-21 12:33:38 -07:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-30 21:11:22 -07:00
2019-05-21 10:50:46 +02:00
2019-05-24 17:36:45 +02:00
2019-05-24 17:36:42 +02:00
2019-05-21 10:50:46 +02:00
2019-05-31 14:27:27 -07:00
2019-05-21 10:50:46 +02:00
2019-05-23 09:29:44 -07:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-30 15:54:04 -07:00
2019-05-30 15:54:04 -07:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-24 17:27:12 +02:00
2019-05-28 17:25:23 -07:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-30 21:11:22 -07:00
2019-05-21 11:28:45 +02:00
2019-05-21 12:33:38 -07:00
2019-05-21 10:50:46 +02:00
2019-05-21 11:28:45 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-06-02 18:10:14 -07:00
2019-05-21 12:33:38 -07:00
2019-05-21 10:50:46 +02:00
2019-05-22 08:28:16 -07:00
2019-05-21 10:50:46 +02:00
2019-05-21 11:28:45 +02:00
2019-05-21 10:50:46 +02:00
2019-05-24 17:27:11 +02:00
2019-05-24 13:27:52 -07:00
2019-05-24 17:39:00 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-22 08:28:16 -07:00
2019-05-26 21:47:13 -07:00
2019-05-24 17:36:46 +02:00
2019-05-21 12:33:38 -07:00
2019-05-21 10:50:46 +02:00
2019-05-21 10:50:46 +02:00
2019-05-24 17:27:12 +02:00
2019-05-21 10:50:46 +02:00
2019-05-21 12:33:38 -07:00
2019-05-21 10:50:45 +02:00
2019-05-21 10:50:46 +02:00
2019-02-28 08:24:23 -07:00
2019-05-19 10:33:22 -07:00
2019-05-21 10:50:45 +02:00