Cong Wang <xiyou.wangc...@gmail.com> writes:
> On Thu, May 28, 2020 at 2:48 AM Petr Machata <pe...@mellanox.com> wrote: >> So you propose to have further division within the block? To have sort >> of namespaces within blocks or chains, where depending on the context, >> only filters in the corresponding namespace are executed? > > What I suggest is to let filters (or chain or block) decide where > they belong to, because I think that fit naturally. So filters would have this attribute that marks them for execution in the qevent context? Does "goto chain" keep this position? I.e. are the executed filters from the "position" context or not? If they keep the position, then this new system can be equivalently modeled as simply a block binding point. If "goto chain" loses the position, that is just a block binding point and a chain to start on, instead of the default zero. So introducing the position does not seem to allow us to model anything that could not be modeled before. But it is a more complicated system. > What you suggest is to let qdisc's decide where they put filters, > which looks odd to me. Ultimately the qdisc decides what qevents to expose. Qevents are closely tied to the inner workings of a qdisc algorithm, they can't be probed as modules the way qdiscs, filters and actions can. If a user wishes to make use of them, they will have to let qdiscs "dictate" where to put the filters one way or another.