Hi Aaron, Happy to write a test case for this. The plan would be to add a set-flow command to ovs-dpctl.py (OVS_FLOW_CMD_SET is defined but never used today), then add a shell test that creates a flow with actions and modifies it without actions to exercise the implicit drop path.
Should I target net or net-next for the test patch? Thanks, Minxi Aaron Conole <[email protected]> 于2026年6月4日周四 23:36写道: > Hi Adrian, > > Adrian Moreno via dev <[email protected]> writes: > > > After the patch in the "Fixes" tag, the allocation of the "reply" skb > > can happen either before or after locking the ovs_mutex. > > > > However, error cleanups still follow the classical reversed order, > > assuming "reply" is allocated before locking: it is freed after > unlocking. > > > > If "reply" allocation happens after locking the mutex and it fails, > > "reply" is left with an ERR_PTR, and execution jumps to the correspondent > > cleanup stage which will try to free an invalid pointer. > > > > Fix this by setting the pointer to NULL after having saved its error > > value. > > > > Fixes: 893f139b9a6c ("openvswitch: Minimize ovs_flow_cmd_new|set > > critical sections.") > > > > Signed-off-by: Adrian Moreno <[email protected]> > > --- > > Good catch - I guess this should only happen when modifying an existing > flow without putting any actions (and that would be only from an > implicit drop case since the actions list would be empty). CC'ing > Minxi, since he's recently had interest in the selftests area and may be > able to help with writing a test case for the scenario. > > Reviewed-by: Aaron Conole <[email protected]> > > _______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
