Subject: Re: [PATCH 0/6] Add qdisc->ops->peek() support.

From: Patrick McHardy <[email-masked]>
Date: Thu, 16 Oct 2008 14:38:31 +0200

Jarek Poplawski wrote:
> So here is my try (I hope I didn't miss Patrick's intentions to much).
> 
> PATCH 6/6 adds my simple idea not to prevent even nonsense configs.
> It is optional.

These patches look good to me. About 6/6, I'm still thinking we
might want to prevent certain kinds of nonsensical configurations
for simplicity. Its a bit similar to the multiq stuff, a lot of
these complications came from the fact that non-work-conserving
qdiscs, which require a global view, are treated similar to work-
conserving ones. I don't have a good scheme worked out though,
so for now using your patch seems OK too.

> PS: after this patchset only netem_enqueue() needs qdisc->requeue(),
> but I hope this won't take too long.

Assuming work-conserving qdiscs are used with netem, the currently
code will always send out a reorder packet immediately. This behaviour
is trivial to implement without ->requeue. The problematic case is
non-work-conserving inner qdiscs, but that doesn't seem important
at all since you'd usually add it as parent of netem, which still
works.