CVSROOT: /cvs Module name: src Changes by: d...@cvs.openbsd.org 2017/06/01 18:07:12
Modified files: sys/net : ifq.c Log message: be less tricky about when ifq_free is handled. instead of assuming start routines only run inside the ifq serialiser, only rely on the serialisation provided by the ifq mtx which is explicitly used during ifq_deq ops. ie, free the mbufs in ifq_free at the end of ifq_deq ops instead of in the ifq_serialiser loop. ifq deq ops arent necessarily called within the serialiser. this should fix panics caused by fq codel on top of bce (which calls bce_start from it's tx completion path instead of ifq_restart). ok mikeb@