Messages in this thread | | | Date | Tue, 16 Aug 2016 01:27:17 +0200 (CEST) | From | Jiri Kosina <> | Subject | Re: [PATCH 2/2] net: sched: convert qdisc linked list to hashtable |
| |
On Sat, 13 Aug 2016, Cong Wang wrote:
> > How about we actually extend a little bit the TCQ_F_BUILTIN special case > > test in qdisc_match_from_root()? > > > > After the change, the only way how qdisc_dev() could be NULL should be a > > TCQ_F_BUILTIN case, right? > > > > I was thinking about something like the patch below (the reasong being > > that ->dev would be NULL only in cases of singletonish qdiscs) ... > > wouldn't that also fix the issue you're seeing? Have to think it through a > > little bit more .. > > I think this is probably why we never show noop qdisc in dump.
Well, partially. A lot of 'default' qdiscs are omitted in a not really uniform and deterministic way. That's actually the primary point of this whole effort -- to get rid of the hidden qdiscs entirely.
> So I think we should relax the singleton rule for noop_qdisc, to save > some code for noop_qdisc case and also for dumping noop_qdisc.
Completely moving away from singleton qdiscs is one of the possibilities, but OTOH I think that my special-casing of !qdisc_dev(root) in qdisc_match_from_root() is correct handling of singletons. I've been completely off the grid for the past three days, but I plan to submit this as a proper followup fix tomorrow if noone has any objections.
> I will try to work on a patch tomorrow.
What still needs to be looked into are the duplicate clsact entries for multiqueue.
Thanks,
-- Jiri Kosina SUSE Labs
| |