Module Name: src Committed By: ozaki-r Date: Mon May 14 02:55:03 UTC 2018
Modified Files: src/sys/net: bpf.c if.c if_bridge.c Log Message: Protect packet input routines with KERNEL_LOCK and splsoftnet if_input, i.e, ether_input and friends, now runs in softint without any protections. It's ok for ether_input itself because it's already MP-safe, however, subsequent routines called from it such as carp_input and agr_input aren't safe because they're not MP-safe. Protect if_input with KERNEL_LOCK. if_input can be called from a normal LWP context. In that case we need to prevent interrupts (softint) from running by splsoftnet to protect non-MP-safe codes (e.g., carp_input and agr_input). Pointed out by mlelstv@ To generate a diff of this commit: cvs rdiff -u -r1.223 -r1.224 src/sys/net/bpf.c cvs rdiff -u -r1.421 -r1.422 src/sys/net/if.c cvs rdiff -u -r1.154 -r1.155 src/sys/net/if_bridge.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.