From: Willem de Bruijn <willemdebruijn.ker...@gmail.com> Date: Mon, 23 Apr 2018 17:37:03 -0400
> From: Willem de Bruijn <will...@google.com> > > Updates to the bitfields in struct packet_sock are not atomic. > Serialize these read-modify-write cycles. > > Move po->running into a separate variable. Its writes are protected by > po->bind_lock (except for one startup case at packet_create). Also > replace a textual precondition warning with lockdep annotation. > > All others are set only in packet_setsockopt. Serialize these > updates by holding the socket lock. Analogous to other field updates, > also hold the lock when testing whether a ring is active (pg_vec). > > Fixes: 8dc419447415 ("[PACKET]: Add optional checksum computation for > recvmsg") > Reported-by: DaeRyong Jeong <threeear...@gmail.com> > Reported-by: Byoungyoung Lee <byoungyo...@purdue.edu> > Signed-off-by: Willem de Bruijn <will...@google.com> Looks good, applied and queued up for -stable. Thanks for fixing this Willem.