On Mon, 25 Jun 2018 22:40:21 +0200, Jiri Pirko wrote: > Mon, Jun 25, 2018 at 10:22:46PM CEST, jakub.kicin...@netronome.com wrote: > >From: John Hurley <john.hur...@netronome.com> > > > >TC shared blocks allow multiple qdiscs to be grouped together and filters > >shared between them. Currently the chains of filters attached to a block > >are only flushed when the block is removed. If a qdisc is removed from a > >block but the block still exists, flow del messages are not passed to the > >callback registered for that qdisc. For the NFP, this presents the > >possibility of rules still existing in hw when they should be removed. > > > >Prevent binding to shared blocks until the kernel can send per qdisc del > >messages when block unbinds occur. > > This is not nfp-specific problem. Should be handled differently. The > driver has information about offloaded filters. On unbind, it have > enough info to do the flush, doesn't it?
Certainly. But this fix is simpler and sufficient. We need to backport it back to 4.16. If we have to go through driver tables and flush filters we may as well merge the reoffload series to net.