On Mon, 2016-05-09 at 21:57 -0700, Cong Wang wrote: > Sure, but we are talking about memory constraint case, aren't we? > > If the whole system are suffering from memory pressure, the whole > qdisc should be halted?
Please read the patch again. I added a mem control, exactly to control memory usage in the first place. If the admin allows this qdisc to consume 4MBytes, then we can queue up to 4 Mbytes on it. If we evict packets from _other_ flow because of whatever limit is hit (being number of packets or memory usage), we do not report to the innocent guy that some packets were dropped. The innocent guy packet _is_ queued and _should_ be sent eventually. Of course, if we could predict the future and that 456 usec later, the packet will be lost anyway, we would notify the innocent guy right away. But this is left for future improvement.