Subject: if_qflush()/IFQ_PURGE()
To: Jun-ichiro itojun Hagino <itojun@iijlab.net>
From: Charles M. Hannum <root@ihack.net>
List: tech-net
Date: 12/19/2000 07:25:23
>         to migrate to ALTQ gradually, we need to kee if_qflush() until
>         all the drivers are rewritten.  if_qflush() certainly works for
>         non-ALTQ drivers (correct me if i'm wrong).

Okay, that may be.  However, it's quite dangerous to leave an
interface there that will break if it's used -- and it seems clear
that people want to ALTQify everything *.

>         not sure i understand the concern, but IFQ_PURGE() may be
>         expanded into ALTQ_PURGE().

No, it is never `expanded into ALTQ_PURGE()'.  It is expanded into
some big conditional which *may* do an ALTQ_PURGE().  My point was
that test could just as well go in if_qflush().  There is no reason to
have an inlined macro for it at all.  Actually, it's a waste of space.


* I'll just note that at Nxkxa we found software QoS really wasn't
  useful for much on `high speed' interfaces because the length of the
  feedback cycle from the driver to allow more packets to be queued
  couldn't be reduced enough without causing gaps during full-rate
  bursts.  Using it strictly for constant-rate bandwidth-limiting
  worked okay, but that was about it.  But I digress.