CVSROOT: /cvs Module name: src Changes by: s...@cvs.openbsd.org 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@