CVSROOT: /cvs
Module name: src
Changes by: [email protected] 2018/04/29 02:45:01
Modified files:
sys/dev/pci : if_em_hw.c if_em_hw.h
Log message:
em: Make em_get_software_flag() recursive
The em driver calls em_get_software_flag() recursively, which causes the
semaphore to be unlocked too early. Make em_get_software_flag and
em_release_software_flag handle this correctly. Freebsd does not do
this, but they have a mutex that probably allows them to detect
recursive calls to e1000_acquire_swflag_ich8lan(). Reworking the
openbsd driver to not recursively get the semaphore would be very
invasive.
ok mikeb@