diff options
author | David Gwynne <dlg@cvs.openbsd.org> | 2024-11-20 02:18:46 +0000 |
---|---|---|
committer | David Gwynne <dlg@cvs.openbsd.org> | 2024-11-20 02:18:46 +0000 |
commit | 9bb5f5946fe1bfd777b4367d0843d238d951f801 (patch) | |
tree | 94a016e3bc295c6e20100f7786b15b4218a26284 /sys/dev/diskmap.c | |
parent | 2acd40fdb3af267ac7ecad29ede14615eaaf54d3 (diff) |
provide ifq_deq_set_oactive.
ifq_deq_set_oactive is a variation on ifq_set_oactive that can be
called inside an if_deq_begin "transaction".
afresh@ found de(4) was calling ifq_set_oactive while holding the
ifq mutex via ifq_deq_begin, which led to a panic because ifq_set_oactive
also tries to take the ifq mutex. ifq_deq_set_oactive assumes the
caller is already holding the mutex.
de(4) is confusing, so it seemed simpler to add a small tweak to
ifqs than try and do major surgery on such a hairy driver.
tested by afresh@
Diffstat (limited to 'sys/dev/diskmap.c')
0 files changed, 0 insertions, 0 deletions