Re: Deleting child qdisc doesn't reset parent to default qdisc?

From: Jiri Kosina
Date: Tue Jun 28 2016 - 13:33:17 EST


On Tue, 28 Jun 2016, Cong Wang wrote:

> > BTW, I've started to actually work on fixing this, and I've noticed that
> > TBF behavior actually violates what's stated in pfifo_fast manpage:
> >
> > ==========
> > Whenever an interface is created, the pfifo_fast qdisc is
> > automatically used as a queue. If another qdisc is
> > attached, it preempts the default pfifo_fast, which automatically
> > returns to function when an existing qdisc is detached.
> >
> > In this sense this qdisc is magic, and unlike other qdiscs.
> > ==========
>
> It is out of date, now default qdisc can be set to any other qdisc
> via /proc. Also, probably due to historical reasons, we don't have
> a unified default default qdisc, some uses bfifo, some uses pfifo,
> we may break some existing script if we change that.

While I do understand that reasoning, I'd argue that unpredictable and
unexpected behavior of TBF causing systems with non-working networking is
much more likely than any userspace having hard dependency on the fact
that default (*) qdisc for TBF is noop.

(*) where 'default upon creation' != 'default when reset'

Thanks,

--
Jiri Kosina
SUSE Labs