head 1.5; access; symbols netbsd-10-0-RELEASE:1.5 netbsd-10-0-RC6:1.5 netbsd-10-0-RC5:1.5 netbsd-10-0-RC4:1.5 netbsd-10-0-RC3:1.5 netbsd-10-0-RC2:1.5 thorpej-ifq:1.5.0.176 thorpej-ifq-base:1.5 thorpej-altq-separation:1.5.0.174 thorpej-altq-separation-base:1.5 netbsd-10-0-RC1:1.5 netbsd-10:1.5.0.172 netbsd-10-base:1.5 bouyer-sunxi-drm:1.5.0.170 bouyer-sunxi-drm-base:1.5 netbsd-9-3-RELEASE:1.5 thorpej-i2c-spi-conf2:1.5.0.168 thorpej-i2c-spi-conf2-base:1.5 thorpej-futex2:1.5.0.166 thorpej-futex2-base:1.5 thorpej-cfargs2:1.5.0.164 thorpej-cfargs2-base:1.5 cjep_sun2x-base1:1.5 cjep_sun2x:1.5.0.162 cjep_sun2x-base:1.5 cjep_staticlib_x-base1:1.5 netbsd-9-2-RELEASE:1.5 cjep_staticlib_x:1.5.0.160 cjep_staticlib_x-base:1.5 thorpej-i2c-spi-conf:1.5.0.158 thorpej-i2c-spi-conf-base:1.5 thorpej-cfargs:1.5.0.156 thorpej-cfargs-base:1.5 thorpej-futex:1.5.0.154 thorpej-futex-base:1.5 netbsd-9-1-RELEASE:1.5 bouyer-xenpvh-base2:1.5 phil-wifi-20200421:1.5 bouyer-xenpvh-base1:1.5 phil-wifi-20200411:1.5 bouyer-xenpvh:1.5.0.152 bouyer-xenpvh-base:1.5 is-mlppp:1.5.0.150 is-mlppp-base:1.5 phil-wifi-20200406:1.5 netbsd-8-2-RELEASE:1.5 ad-namecache-base3:1.5 netbsd-9-0-RELEASE:1.5 netbsd-9-0-RC2:1.5 ad-namecache-base2:1.5 ad-namecache-base1:1.5 ad-namecache:1.5.0.148 ad-namecache-base:1.5 netbsd-9-0-RC1:1.5 phil-wifi-20191119:1.5 netbsd-9:1.5.0.146 netbsd-9-base:1.5 phil-wifi-20190609:1.5 netbsd-8-1-RELEASE:1.5 netbsd-8-1-RC1:1.5 isaki-audio2:1.5.0.144 isaki-audio2-base:1.5 pgoyette-compat-merge-20190127:1.5 pgoyette-compat-20190127:1.5 pgoyette-compat-20190118:1.5 pgoyette-compat-1226:1.5 pgoyette-compat-1126:1.5 pgoyette-compat-1020:1.5 pgoyette-compat-0930:1.5 pgoyette-compat-0906:1.5 netbsd-7-2-RELEASE:1.5 pgoyette-compat-0728:1.5 netbsd-8-0-RELEASE:1.5 phil-wifi:1.5.0.142 phil-wifi-base:1.5 pgoyette-compat-0625:1.5 netbsd-8-0-RC2:1.5 pgoyette-compat-0521:1.5 pgoyette-compat-0502:1.5 pgoyette-compat-0422:1.5 netbsd-8-0-RC1:1.5 pgoyette-compat-0415:1.5 pgoyette-compat-0407:1.5 pgoyette-compat-0330:1.5 pgoyette-compat-0322:1.5 pgoyette-compat-0315:1.5 netbsd-7-1-2-RELEASE:1.5 pgoyette-compat:1.5.0.140 pgoyette-compat-base:1.5 netbsd-7-1-1-RELEASE:1.5 tls-maxphys-base-20171202:1.5 matt-nb8-mediatek:1.5.0.138 matt-nb8-mediatek-base:1.5 nick-nhusb-base-20170825:1.5 perseant-stdc-iso10646:1.5.0.136 perseant-stdc-iso10646-base:1.5 netbsd-8:1.5.0.134 netbsd-8-base:1.5 prg-localcount2-base3:1.5 prg-localcount2-base2:1.5 prg-localcount2-base1:1.5 prg-localcount2:1.5.0.132 prg-localcount2-base:1.5 pgoyette-localcount-20170426:1.5 bouyer-socketcan-base1:1.5 jdolecek-ncq:1.5.0.130 jdolecek-ncq-base:1.5 pgoyette-localcount-20170320:1.5 netbsd-7-1:1.5.0.128 netbsd-7-1-RELEASE:1.5 netbsd-7-1-RC2:1.5 nick-nhusb-base-20170204:1.5 netbsd-7-nhusb-base-20170116:1.5 bouyer-socketcan:1.5.0.126 bouyer-socketcan-base:1.5 pgoyette-localcount-20170107:1.5 netbsd-7-1-RC1:1.5 nick-nhusb-base-20161204:1.5 pgoyette-localcount-20161104:1.5 netbsd-7-0-2-RELEASE:1.5 nick-nhusb-base-20161004:1.5 localcount-20160914:1.5 netbsd-7-nhusb:1.5.0.124 netbsd-7-nhusb-base:1.5 pgoyette-localcount-20160806:1.5 pgoyette-localcount-20160726:1.5 pgoyette-localcount:1.5.0.122 pgoyette-localcount-base:1.5 nick-nhusb-base-20160907:1.5 nick-nhusb-base-20160529:1.5 netbsd-7-0-1-RELEASE:1.5 nick-nhusb-base-20160422:1.5 nick-nhusb-base-20160319:1.5 nick-nhusb-base-20151226:1.5 netbsd-7-0:1.5.0.120 netbsd-7-0-RELEASE:1.5 nick-nhusb-base-20150921:1.5 netbsd-7-0-RC3:1.5 netbsd-7-0-RC2:1.5 netbsd-7-0-RC1:1.5 nick-nhusb-base-20150606:1.5 nick-nhusb-base-20150406:1.5 nick-nhusb:1.5.0.118 nick-nhusb-base:1.5 netbsd-5-2-3-RELEASE:1.5 netbsd-5-1-5-RELEASE:1.5 netbsd-6-0-6-RELEASE:1.5 netbsd-6-1-5-RELEASE:1.5 netbsd-7:1.5.0.116 netbsd-7-base:1.5 yamt-pagecache-base9:1.5 yamt-pagecache-tag8:1.5 netbsd-6-1-4-RELEASE:1.5 netbsd-6-0-5-RELEASE:1.5 tls-earlyentropy:1.5.0.114 tls-earlyentropy-base:1.5 riastradh-xf86-video-intel-2-7-1-pre-2-21-15:1.5 riastradh-drm2-base3:1.5 netbsd-6-1-3-RELEASE:1.5 netbsd-6-0-4-RELEASE:1.5 netbsd-5-2-2-RELEASE:1.5 netbsd-5-1-4-RELEASE:1.5 netbsd-6-1-2-RELEASE:1.5 netbsd-6-0-3-RELEASE:1.5 netbsd-5-2-1-RELEASE:1.5 netbsd-5-1-3-RELEASE:1.5 rmind-smpnet-nbase:1.5 netbsd-6-1-1-RELEASE:1.5 riastradh-drm2-base2:1.5 riastradh-drm2-base1:1.5 riastradh-drm2:1.5.0.112 riastradh-drm2-base:1.5 rmind-smpnet:1.5.0.104 rmind-smpnet-base:1.5 netbsd-6-1:1.5.0.110 netbsd-6-0-2-RELEASE:1.5 netbsd-6-1-RELEASE:1.5 khorben-n900:1.5.0.108 netbsd-6-1-RC4:1.5 netbsd-6-1-RC3:1.5 agc-symver:1.5.0.106 agc-symver-base:1.5 netbsd-6-1-RC2:1.5 netbsd-6-1-RC1:1.5 yamt-pagecache-base8:1.5 netbsd-5-2:1.5.0.102 netbsd-6-0-1-RELEASE:1.5 yamt-pagecache-base7:1.5 netbsd-5-2-RELEASE:1.5 netbsd-5-2-RC1:1.5 matt-nb6-plus-nbase:1.5 yamt-pagecache-base6:1.5 netbsd-6-0:1.5.0.100 netbsd-6-0-RELEASE:1.5 netbsd-6-0-RC2:1.5 tls-maxphys:1.5.0.98 tls-maxphys-base:1.5 matt-nb6-plus:1.5.0.96 matt-nb6-plus-base:1.5 netbsd-6-0-RC1:1.5 jmcneill-usbmp-base10:1.5 yamt-pagecache-base5:1.5 jmcneill-usbmp-base9:1.5 yamt-pagecache-base4:1.5 jmcneill-usbmp-base8:1.5 jmcneill-usbmp-base7:1.5 jmcneill-usbmp-base6:1.5 jmcneill-usbmp-base5:1.5 jmcneill-usbmp-base4:1.5 jmcneill-usbmp-base3:1.5 jmcneill-usbmp-pre-base2:1.5 jmcneill-usbmp-base2:1.5 netbsd-6:1.5.0.94 netbsd-6-base:1.5 netbsd-5-1-2-RELEASE:1.5 netbsd-5-1-1-RELEASE:1.5 jmcneill-usbmp:1.5.0.92 jmcneill-usbmp-base:1.5 jmcneill-audiomp3:1.5.0.90 jmcneill-audiomp3-base:1.5 yamt-pagecache-base3:1.5 yamt-pagecache-base2:1.5 yamt-pagecache:1.5.0.88 yamt-pagecache-base:1.5 rmind-uvmplock-nbase:1.5 cherry-xenmp:1.5.0.86 cherry-xenmp-base:1.5 bouyer-quota2-nbase:1.5 bouyer-quota2:1.5.0.84 bouyer-quota2-base:1.5 jruoho-x86intr:1.5.0.82 jruoho-x86intr-base:1.5 matt-mips64-premerge-20101231:1.5 matt-nb5-mips64-premerge-20101231:1.5 matt-nb5-pq3:1.5.0.80 matt-nb5-pq3-base:1.5 netbsd-5-1:1.5.0.78 netbsd-5-1-RELEASE:1.5 uebayasi-xip-base4:1.5 uebayasi-xip-base3:1.5 yamt-nfs-mp-base11:1.5 netbsd-5-1-RC4:1.5 matt-nb5-mips64-k15:1.5 uebayasi-xip-base2:1.5 yamt-nfs-mp-base10:1.5 netbsd-5-1-RC3:1.5 netbsd-5-1-RC2:1.5 uebayasi-xip-base1:1.5 netbsd-5-1-RC1:1.5 rmind-uvmplock:1.5.0.76 rmind-uvmplock-base:1.5 yamt-nfs-mp-base9:1.5 uebayasi-xip:1.5.0.74 uebayasi-xip-base:1.5 netbsd-5-0-2-RELEASE:1.5 matt-nb5-mips64-premerge-20091211:1.5 matt-premerge-20091211:1.5 yamt-nfs-mp-base8:1.5 matt-nb5-mips64-u2-k2-k4-k7-k8-k9:1.5 matt-nb4-mips64-k7-u2a-k9b:1.5 matt-nb5-mips64-u1-k1-k5:1.5 yamt-nfs-mp-base7:1.5 matt-nb5-mips64:1.5.0.72 netbsd-5-0-1-RELEASE:1.5 jymxensuspend-base:1.5 yamt-nfs-mp-base6:1.5 yamt-nfs-mp-base5:1.5 yamt-nfs-mp-base4:1.5 jym-xensuspend-nbase:1.5 yamt-nfs-mp-base3:1.5 nick-hppapmap-base4:1.5 nick-hppapmap-base3:1.5 netbsd-5-0:1.5.0.70 netbsd-5-0-RELEASE:1.5 netbsd-5-0-RC4:1.5 netbsd-5-0-RC3:1.5 nick-hppapmap-base2:1.5 netbsd-5-0-RC2:1.5 jym-xensuspend:1.5.0.68 jym-xensuspend-base:1.5 netbsd-5-0-RC1:1.5 haad-dm-base2:1.5 haad-nbase2:1.5 ad-audiomp2:1.5.0.66 ad-audiomp2-base:1.5 netbsd-5:1.5.0.64 netbsd-5-base:1.5 nick-hppapmap:1.5.0.62 nick-hppapmap-base:1.5 matt-mips64-base2:1.5 matt-mips64:1.5.0.60 haad-dm-base1:1.5 wrstuden-revivesa-base-4:1.5 netbsd-4-0-1-RELEASE:1.5 wrstuden-revivesa-base-3:1.5 wrstuden-revivesa-base-2:1.5 wrstuden-fixsa-newbase:1.5 nick-csl-alignment-base5:1.5 haad-dm:1.5.0.58 haad-dm-base:1.5 wrstuden-revivesa-base-1:1.5 simonb-wapbl-nbase:1.5 yamt-pf42-base4:1.5 simonb-wapbl:1.5.0.56 simonb-wapbl-base:1.5 yamt-pf42-base3:1.5 hpcarm-cleanup-nbase:1.5 yamt-pf42-baseX:1.5 yamt-pf42-base2:1.5 yamt-nfs-mp-base2:1.5 wrstuden-revivesa:1.5.0.54 wrstuden-revivesa-base:1.5 yamt-nfs-mp:1.5.0.52 yamt-nfs-mp-base:1.5 yamt-pf42:1.5.0.50 yamt-pf42-base:1.5 ad-socklock-base1:1.5 yamt-lazymbuf-base15:1.5 yamt-lazymbuf-base14:1.5 keiichi-mipv6-nbase:1.5 mjf-devfs2:1.5.0.48 mjf-devfs2-base:1.5 nick-net80211-sync:1.5.0.46 nick-net80211-sync-base:1.5 keiichi-mipv6:1.5.0.44 keiichi-mipv6-base:1.5 ad-audiomp-base-1:1.5 bouyer-xeni386-merge1:1.5 matt-armv6-prevmlocking:1.5 wrstuden-fixsa-base-1:1.5 vmlocking2-base3:1.5 netbsd-4-0:1.5.0.42 netbsd-4-0-RELEASE:1.5 bouyer-xeni386-nbase:1.5 yamt-kmem-base3:1.5 cube-autoconf:1.5.0.40 cube-autoconf-base:1.5 yamt-kmem-base2:1.5 bouyer-xeni386:1.5.0.38 bouyer-xeni386-base:1.5 yamt-kmem:1.5.0.36 yamt-kmem-base:1.5 vmlocking2-base2:1.5 reinoud-bufcleanup-nbase:1.5 vmlocking2:1.5.0.34 vmlocking2-base1:1.5 netbsd-4-0-RC5:1.5 matt-nb4-arm:1.5.0.32 matt-nb4-arm-base:1.5 matt-armv6-nbase:1.5 jmcneill-base:1.5 netbsd-4-0-RC4:1.5 mjf-devfs:1.5.0.30 mjf-devfs-base:1.5 bouyer-xenamd64-base2:1.5 vmlocking-nbase:1.5 yamt-x86pmap-base4:1.5 bouyer-xenamd64:1.5.0.28 bouyer-xenamd64-base:1.5 netbsd-4-0-RC3:1.5 yamt-x86pmap-base3:1.5 yamt-x86pmap-base2:1.5 netbsd-4-0-RC2:1.5 yamt-x86pmap:1.5.0.26 yamt-x86pmap-base:1.5 netbsd-4-0-RC1:1.5 matt-armv6:1.5.0.24 matt-armv6-base:1.5 matt-mips64-base:1.5 jmcneill-pm:1.5.0.22 jmcneill-pm-base:1.5 hpcarm-cleanup:1.5.0.20 hpcarm-cleanup-base:1.5 nick-csl-alignment:1.5.0.18 nick-csl-alignment-base:1.5 netbsd-3-1-1-RELEASE:1.3 netbsd-3-0-3-RELEASE:1.3 yamt-idlelwp-base8:1.5 wrstuden-fixsa:1.5.0.16 wrstuden-fixsa-base:1.5 thorpej-atomic:1.5.0.14 thorpej-atomic-base:1.5 reinoud-bufcleanup:1.5.0.12 reinoud-bufcleanup-base:1.5 mjf-ufs-trans:1.5.0.10 mjf-ufs-trans-base:1.5 vmlocking:1.5.0.8 vmlocking-base:1.5 ad-audiomp:1.5.0.6 ad-audiomp-base:1.5 yamt-idlelwp:1.5.0.4 post-newlock2-merge:1.5 newlock2-nbase:1.5 yamt-splraiseipl-base5:1.5 yamt-splraiseipl-base4:1.5 yamt-splraiseipl-base3:1.5 abandoned-netbsd-4-base:1.4 abandoned-netbsd-4:1.4.0.18 netbsd-3-1:1.3.0.14 netbsd-3-1-RELEASE:1.3 netbsd-3-0-2-RELEASE:1.3 yamt-splraiseipl-base2:1.5 netbsd-3-1-RC4:1.3 yamt-splraiseipl:1.4.0.22 yamt-splraiseipl-base:1.4 netbsd-3-1-RC3:1.3 yamt-pdpolicy-base9:1.4 newlock2:1.4.0.20 newlock2-base:1.5 yamt-pdpolicy-base8:1.4 netbsd-3-1-RC2:1.3 netbsd-3-1-RC1:1.3 yamt-pdpolicy-base7:1.4 netbsd-4:1.5.0.2 netbsd-4-base:1.5 yamt-pdpolicy-base6:1.4 chap-midi-nbase:1.4 netbsd-3-0-1-RELEASE:1.3 gdamore-uart:1.4.0.16 gdamore-uart-base:1.4 simonb-timcounters-final:1.4 yamt-pdpolicy-base5:1.4 chap-midi:1.4.0.14 chap-midi-base:1.4 yamt-pdpolicy-base4:1.4 yamt-pdpolicy-base3:1.4 peter-altq-base:1.4 peter-altq:1.4.0.12 yamt-pdpolicy-base2:1.4 elad-kernelauth-base:1.4 elad-kernelauth:1.4.0.10 yamt-pdpolicy:1.4.0.8 yamt-pdpolicy-base:1.4 yamt-uio_vmspace-base5:1.4 simonb-timecounters:1.4.0.6 simonb-timecounters-base:1.4 rpaulo-netinet-merge-pcb:1.4.0.4 rpaulo-netinet-merge-pcb-base:1.4 yamt-uio_vmspace:1.4.0.2 netbsd-3-0:1.3.0.12 netbsd-3-0-RELEASE:1.3 netbsd-3-0-RC6:1.3 yamt-readahead-base3:1.3 netbsd-3-0-RC5:1.3 netbsd-3-0-RC4:1.3 netbsd-3-0-RC3:1.3 yamt-readahead-base2:1.3 netbsd-3-0-RC2:1.3 yamt-readahead-pervnode:1.3 yamt-readahead-perfile:1.3 yamt-readahead:1.3.0.10 yamt-readahead-base:1.3 netbsd-3-0-RC1:1.3 yamt-vop-base3:1.3 netbsd-2-0-3-RELEASE:1.2 netbsd-2-1:1.2.0.40 yamt-vop-base2:1.3 thorpej-vnode-attr:1.3.0.8 thorpej-vnode-attr-base:1.3 netbsd-2-1-RELEASE:1.2 yamt-vop:1.3.0.6 yamt-vop-base:1.3 netbsd-2-1-RC6:1.2 netbsd-2-1-RC5:1.2 netbsd-2-1-RC4:1.2 netbsd-2-1-RC3:1.2 netbsd-2-1-RC2:1.2 netbsd-2-1-RC1:1.2 yamt-lazymbuf:1.3.0.4 yamt-km-base4:1.3 netbsd-2-0-2-RELEASE:1.2 yamt-km-base3:1.3 netbsd-3:1.3.0.2 netbsd-3-base:1.3 yamt-km-base2:1.2 yamt-km:1.2.0.36 yamt-km-base:1.2 kent-audio2:1.2.0.34 kent-audio2-base:1.3 netbsd-2-0-1-RELEASE:1.2 kent-audio1-beforemerge:1.2 netbsd-2:1.2.0.32 netbsd-2-base:1.2 kent-audio1:1.2.0.30 kent-audio1-base:1.2 netbsd-2-0-RELEASE:1.2 netbsd-2-0-RC5:1.2 netbsd-2-0-RC4:1.2 netbsd-2-0-RC3:1.2 netbsd-2-0-RC2:1.2 netbsd-2-0-RC1:1.2 netbsd-2-0:1.2.0.28 netbsd-2-0-base:1.2 netbsd-1-6-PATCH002-RELEASE:1.2 netbsd-1-6-PATCH002:1.2 netbsd-1-6-PATCH002-RC4:1.2 netbsd-1-6-PATCH002-RC3:1.2 netbsd-1-6-PATCH002-RC2:1.2 netbsd-1-6-PATCH002-RC1:1.2 ktrace-lwp:1.2.0.26 ktrace-lwp-base:1.3 netbsd-1-6-PATCH001:1.2 netbsd-1-6-PATCH001-RELEASE:1.2 netbsd-1-6-PATCH001-RC3:1.2 netbsd-1-6-PATCH001-RC2:1.2 netbsd-1-6-PATCH001-RC1:1.2 nathanw_sa_end:1.2 nathanw_sa_before_merge:1.2 fvdl_fs64_base:1.2 gmcgarry_ctxsw:1.2.0.24 gmcgarry_ctxsw_base:1.2 gmcgarry_ucred:1.2.0.22 gmcgarry_ucred_base:1.2 nathanw_sa_base:1.2 kqueue-aftermerge:1.2 kqueue-beforemerge:1.2 netbsd-1-6-RELEASE:1.2 netbsd-1-6-RC3:1.2 netbsd-1-6-RC2:1.2 netbsd-1-6-RC1:1.2 netbsd-1-6:1.2.0.20 netbsd-1-6-base:1.2 gehenna-devsw:1.2.0.18 gehenna-devsw-base:1.2 eeh-devprop:1.2.0.16 eeh-devprop-base:1.2 newlock:1.2.0.14 newlock-base:1.2 ifpoll-base:1.2 thorpej-mips-cache:1.2.0.10 thorpej-mips-cache-base:1.2 thorpej-devvp-base3:1.2 thorpej-devvp-base2:1.2 post-chs-ubcperf:1.2 pre-chs-ubcperf:1.2 thorpej-devvp:1.2.0.8 thorpej-devvp-base:1.2 kqueue:1.2.0.6 kqueue-base:1.2 thorpej_scsipi_beforemerge:1.2 nathanw_sa:1.2.0.4 thorpej_scsipi_nbase:1.2 thorpej_scsipi_base:1.2 thorpej_scsipi:1.2.0.2 kame_15_20001214:1.1.1.1 kame:1.1.1; locks; strict; comment @ * @; 1.5 date 2006.10.12.19.59.08; author peter; state Exp; branches; next 1.4; 1.4 date 2005.12.11.12.16.03; author christos; state Exp; branches 1.4.12.1 1.4.20.1 1.4.22.1; next 1.3; 1.3 date 2005.02.26.23.04.16; author perry; state Exp; branches 1.3.4.1; next 1.2; 1.2 date 2000.12.14.08.49.51; author thorpej; state Exp; branches 1.2.2.1 1.2.26.1 1.2.34.1 1.2.36.1; next 1.1; 1.1 date 2000.12.14.08.42.36; author thorpej; state Exp; branches 1.1.1.1; next ; 1.4.12.1 date 2006.03.18.12.08.18; author peter; state Exp; branches; next ; 1.4.20.1 date 2006.11.18.21.39.03; author ad; state Exp; branches; next ; 1.4.22.1 date 2006.10.22.06.04.30; author yamt; state Exp; branches; next ; 1.3.4.1 date 2006.12.30.20.45.17; author yamt; state Exp; branches; next ; 1.2.2.1 date 2000.12.14.08.49.51; author bouyer; state dead; branches; next 1.2.2.2; 1.2.2.2 date 2001.01.05.17.39.37; author bouyer; state Exp; branches; next ; 1.2.26.1 date 2005.03.04.16.38.00; author skrll; state Exp; branches; next ; 1.2.34.1 date 2005.04.29.11.27.58; author kent; state Exp; branches; next ; 1.2.36.1 date 2005.03.19.08.32.44; author yamt; state Exp; branches; next ; 1.1.1.1 date 2000.12.14.08.42.36; author thorpej; state Exp; branches; next ; desc @@ 1.5 log @Merge the peter-altq branch. (sync with KAME & add support for using ALTQ with pf(4)). @ text @/* $NetBSD: altq_red.h,v 1.4.12.1 2006/03/18 12:08:18 peter Exp $ */ /* $KAME: altq_red.h,v 1.8 2003/07/10 12:07:49 kjc Exp $ */ /* * Copyright (C) 1997-2003 * Sony Computer Science Laboratories Inc. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY SONY CSL AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL SONY CSL OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. */ #ifndef _ALTQ_ALTQ_RED_H_ #define _ALTQ_ALTQ_RED_H_ #include #ifdef ALTQ3_COMPAT struct red_interface { char red_ifname[IFNAMSIZ]; }; struct red_stats { struct red_interface iface; int q_len; int q_avg; struct pktcntr xmit_cnt; struct pktcntr drop_cnt; u_int drop_forced; u_int drop_unforced; u_int marked_packets; /* static red parameters */ int q_limit; int weight; int inv_pmax; int th_min; int th_max; /* flowvalve related stuff */ u_int fv_flows; u_int fv_pass; u_int fv_predrop; u_int fv_alloc; u_int fv_escape; }; struct red_conf { struct red_interface iface; int red_weight; /* weight for EWMA */ int red_inv_pmax; /* inverse of max drop probability */ int red_thmin; /* red min threshold */ int red_thmax; /* red max threshold */ int red_limit; /* max queue length */ int red_pkttime; /* average packet time in usec */ int red_flags; /* see below */ }; #endif /* ALTQ3_COMPAT */ /* red flags */ #define REDF_ECN4 0x01 /* use packet marking for IPv4 packets */ #define REDF_ECN6 0x02 /* use packet marking for IPv6 packets */ #define REDF_ECN (REDF_ECN4 | REDF_ECN6) #define REDF_FLOWVALVE 0x04 /* use flowvalve (aka penalty-box) */ /* * simpler versions of red parameters and statistics used by other * disciplines (e.g., CBQ) */ struct redparams { int th_min; /* red min threshold */ int th_max; /* red max threshold */ int inv_pmax; /* inverse of max drop probability */ }; struct redstats { int q_avg; struct pktcntr xmit_cnt; struct pktcntr drop_cnt; u_int drop_forced; u_int drop_unforced; u_int marked_packets; }; #ifdef ALTQ3_COMPAT /* * IOCTLs for RED */ #define RED_IF_ATTACH _IOW('Q', 1, struct red_interface) #define RED_IF_DETACH _IOW('Q', 2, struct red_interface) #define RED_ENABLE _IOW('Q', 3, struct red_interface) #define RED_DISABLE _IOW('Q', 4, struct red_interface) #define RED_CONFIG _IOWR('Q', 6, struct red_conf) #define RED_GETSTATS _IOWR('Q', 12, struct red_stats) #define RED_SETDEFAULTS _IOW('Q', 30, struct redparams) #endif /* ALTQ3_COMPAT */ #ifdef _KERNEL #ifdef ALTQ3_COMPAT struct flowvalve; #endif /* weight table structure for idle time calibration */ struct wtab { struct wtab *w_next; int w_weight; int w_param_max; int w_refcount; int32_t w_tab[32]; }; typedef struct red { int red_pkttime; /* average packet time in micro sec used for idle calibration */ int red_flags; /* red flags */ /* red parameters */ int red_weight; /* weight for EWMA */ int red_inv_pmax; /* inverse of max drop probability */ int red_thmin; /* red min threshold */ int red_thmax; /* red max threshold */ /* variables for internal use */ int red_wshift; /* log(red_weight) */ int red_thmin_s; /* th_min scaled by avgshift */ int red_thmax_s; /* th_max scaled by avgshift */ int red_probd; /* drop probability denominator */ int red_avg; /* queue len avg scaled by avgshift */ int red_count; /* packet count since last dropped/ marked packet */ int red_idle; /* queue was empty */ int red_old; /* avg is above th_min */ struct wtab *red_wtab; /* weight table */ struct timeval red_last; /* time when the queue becomes idle */ #ifdef ALTQ3_COMPAT struct flowvalve *red_flowvalve; /* flowvalve state */ #endif struct { struct pktcntr xmit_cnt; struct pktcntr drop_cnt; u_int drop_forced; u_int drop_unforced; u_int marked_packets; } red_stats; } red_t; #ifdef ALTQ3_COMPAT typedef struct red_queue { struct red_queue *rq_next; /* next red_state in the list */ struct ifaltq *rq_ifq; /* backpointer to ifaltq */ class_queue_t *rq_q; red_t *rq_red; } red_queue_t; #endif /* ALTQ3_COMPAT */ /* red drop types */ #define DTYPE_NODROP 0 /* no drop */ #define DTYPE_FORCED 1 /* a "forced" drop */ #define DTYPE_EARLY 2 /* an "unforced" (early) drop */ extern red_t *red_alloc(int, int, int, int, int, int); extern void red_destroy(red_t *); extern void red_getstats(red_t *, struct redstats *); extern int red_addq(red_t *, class_queue_t *, struct mbuf *, struct altq_pktattr *); extern struct mbuf *red_getq(red_t *, class_queue_t *); extern int drop_early(int, int, int); extern int mark_ecn(struct mbuf *, struct altq_pktattr *, int); extern struct wtab *wtab_alloc(int); extern int wtab_destroy(struct wtab *); extern int32_t pow_w(struct wtab *, int); #endif /* _KERNEL */ #endif /* _ALTQ_ALTQ_RED_H_ */ @ 1.4 log @merge ktrace-lwp. @ text @d1 2 a2 2 /* $NetBSD: altq_red.h,v 1.2.26.1 2005/03/04 16:38:00 skrll Exp $ */ /* $KAME: altq_red.h,v 1.5 2000/12/14 08:12:46 thorpej Exp $ */ d5 1 a5 1 * Copyright (C) 1997-2000 d35 1 d76 1 d103 1 a103 1 d114 1 d118 1 d120 1 d124 5 a128 5 struct wtab *w_next; int w_weight; int w_param_max; int w_refcount; int32_t w_tab[32]; d132 3 a134 3 int red_pkttime; /* average packet time in micro sec used for idle calibration */ int red_flags; /* red flags */ d137 4 a140 4 int red_weight; /* weight for EWMA */ int red_inv_pmax; /* inverse of max drop probability */ int red_thmin; /* red min threshold */ int red_thmax; /* red max threshold */ d143 12 a154 12 int red_wshift; /* log(red_weight) */ int red_thmin_s; /* th_min scaled by avgshift */ int red_thmax_s; /* th_max scaled by avgshift */ int red_probd; /* drop probability denominator */ int red_avg; /* queue length average scaled by avgshift */ int red_count; /* packet count since the last dropped/marked packet */ int red_idle; /* queue was empty */ int red_old; /* avg is above th_min */ struct wtab *red_wtab; /* weight table */ struct timeval red_last; /* timestamp when the queue becomes idle */ d156 1 d158 1 d169 1 d178 1 d185 11 a195 11 extern red_t *red_alloc __P((int, int, int, int, int, int)); extern void red_destroy __P((red_t *)); extern void red_getstats __P((red_t *, struct redstats *)); extern int red_addq __P((red_t *, class_queue_t *, struct mbuf *, struct altq_pktattr *)); extern struct mbuf *red_getq __P((red_t *, class_queue_t *)); extern int drop_early __P((int, int, int)); extern int mark_ecn __P((struct mbuf *, struct altq_pktattr *, int)); extern struct wtab *wtab_alloc __P((int)); extern int wtab_destroy __P((struct wtab *)); extern int32_t pow_w __P((struct wtab *, int)); @ 1.4.20.1 log @Sync with head. @ text @d1 2 a2 2 /* $NetBSD: altq_red.h,v 1.5 2006/10/12 19:59:08 peter Exp $ */ /* $KAME: altq_red.h,v 1.8 2003/07/10 12:07:49 kjc Exp $ */ d5 1 a5 1 * Copyright (C) 1997-2003 a34 1 #ifdef ALTQ3_COMPAT a74 1 #endif /* ALTQ3_COMPAT */ d101 1 a101 1 #ifdef ALTQ3_COMPAT a111 1 #endif /* ALTQ3_COMPAT */ a114 1 #ifdef ALTQ3_COMPAT a115 1 #endif d119 5 a123 5 struct wtab *w_next; int w_weight; int w_param_max; int w_refcount; int32_t w_tab[32]; d127 3 a129 3 int red_pkttime; /* average packet time in micro sec used for idle calibration */ int red_flags; /* red flags */ d132 4 a135 4 int red_weight; /* weight for EWMA */ int red_inv_pmax; /* inverse of max drop probability */ int red_thmin; /* red min threshold */ int red_thmax; /* red max threshold */ d138 12 a149 12 int red_wshift; /* log(red_weight) */ int red_thmin_s; /* th_min scaled by avgshift */ int red_thmax_s; /* th_max scaled by avgshift */ int red_probd; /* drop probability denominator */ int red_avg; /* queue len avg scaled by avgshift */ int red_count; /* packet count since last dropped/ marked packet */ int red_idle; /* queue was empty */ int red_old; /* avg is above th_min */ struct wtab *red_wtab; /* weight table */ struct timeval red_last; /* time when the queue becomes idle */ a150 1 #ifdef ALTQ3_COMPAT a151 1 #endif a161 1 #ifdef ALTQ3_COMPAT a169 1 #endif /* ALTQ3_COMPAT */ d176 11 a186 11 extern red_t *red_alloc(int, int, int, int, int, int); extern void red_destroy(red_t *); extern void red_getstats(red_t *, struct redstats *); extern int red_addq(red_t *, class_queue_t *, struct mbuf *, struct altq_pktattr *); extern struct mbuf *red_getq(red_t *, class_queue_t *); extern int drop_early(int, int, int); extern int mark_ecn(struct mbuf *, struct altq_pktattr *, int); extern struct wtab *wtab_alloc(int); extern int wtab_destroy(struct wtab *); extern int32_t pow_w(struct wtab *, int); @ 1.4.22.1 log @sync with head @ text @d1 2 a2 2 /* $NetBSD$ */ /* $KAME: altq_red.h,v 1.8 2003/07/10 12:07:49 kjc Exp $ */ d5 1 a5 1 * Copyright (C) 1997-2003 a34 1 #ifdef ALTQ3_COMPAT a74 1 #endif /* ALTQ3_COMPAT */ d101 1 a101 1 #ifdef ALTQ3_COMPAT a111 1 #endif /* ALTQ3_COMPAT */ a114 1 #ifdef ALTQ3_COMPAT a115 1 #endif d119 5 a123 5 struct wtab *w_next; int w_weight; int w_param_max; int w_refcount; int32_t w_tab[32]; d127 3 a129 3 int red_pkttime; /* average packet time in micro sec used for idle calibration */ int red_flags; /* red flags */ d132 4 a135 4 int red_weight; /* weight for EWMA */ int red_inv_pmax; /* inverse of max drop probability */ int red_thmin; /* red min threshold */ int red_thmax; /* red max threshold */ d138 12 a149 12 int red_wshift; /* log(red_weight) */ int red_thmin_s; /* th_min scaled by avgshift */ int red_thmax_s; /* th_max scaled by avgshift */ int red_probd; /* drop probability denominator */ int red_avg; /* queue len avg scaled by avgshift */ int red_count; /* packet count since last dropped/ marked packet */ int red_idle; /* queue was empty */ int red_old; /* avg is above th_min */ struct wtab *red_wtab; /* weight table */ struct timeval red_last; /* time when the queue becomes idle */ a150 1 #ifdef ALTQ3_COMPAT a151 1 #endif a161 1 #ifdef ALTQ3_COMPAT a169 1 #endif /* ALTQ3_COMPAT */ d176 11 a186 11 extern red_t *red_alloc(int, int, int, int, int, int); extern void red_destroy(red_t *); extern void red_getstats(red_t *, struct redstats *); extern int red_addq(red_t *, class_queue_t *, struct mbuf *, struct altq_pktattr *); extern struct mbuf *red_getq(red_t *, class_queue_t *); extern int drop_early(int, int, int); extern int mark_ecn(struct mbuf *, struct altq_pktattr *, int); extern struct wtab *wtab_alloc(int); extern int wtab_destroy(struct wtab *); extern int32_t pow_w(struct wtab *, int); @ 1.4.12.1 log @Sync with KAME. @ text @d1 2 a2 2 /* $NetBSD$ */ /* $KAME: altq_red.h,v 1.8 2003/07/10 12:07:49 kjc Exp $ */ d5 1 a5 1 * Copyright (C) 1997-2003 a34 1 #ifdef ALTQ3_COMPAT a74 1 #endif /* ALTQ3_COMPAT */ d101 1 a101 1 #ifdef ALTQ3_COMPAT a111 1 #endif /* ALTQ3_COMPAT */ a114 1 #ifdef ALTQ3_COMPAT a115 1 #endif d119 5 a123 5 struct wtab *w_next; int w_weight; int w_param_max; int w_refcount; int32_t w_tab[32]; d127 3 a129 3 int red_pkttime; /* average packet time in micro sec used for idle calibration */ int red_flags; /* red flags */ d132 4 a135 4 int red_weight; /* weight for EWMA */ int red_inv_pmax; /* inverse of max drop probability */ int red_thmin; /* red min threshold */ int red_thmax; /* red max threshold */ d138 12 a149 12 int red_wshift; /* log(red_weight) */ int red_thmin_s; /* th_min scaled by avgshift */ int red_thmax_s; /* th_max scaled by avgshift */ int red_probd; /* drop probability denominator */ int red_avg; /* queue len avg scaled by avgshift */ int red_count; /* packet count since last dropped/ marked packet */ int red_idle; /* queue was empty */ int red_old; /* avg is above th_min */ struct wtab *red_wtab; /* weight table */ struct timeval red_last; /* time when the queue becomes idle */ a150 1 #ifdef ALTQ3_COMPAT a151 1 #endif a161 1 #ifdef ALTQ3_COMPAT a169 1 #endif /* ALTQ3_COMPAT */ d176 11 a186 11 extern red_t *red_alloc(int, int, int, int, int, int); extern void red_destroy(red_t *); extern void red_getstats(red_t *, struct redstats *); extern int red_addq(red_t *, class_queue_t *, struct mbuf *, struct altq_pktattr *); extern struct mbuf *red_getq(red_t *, class_queue_t *); extern int drop_early(int, int, int); extern int mark_ecn(struct mbuf *, struct altq_pktattr *, int); extern struct wtab *wtab_alloc(int); extern int wtab_destroy(struct wtab *); extern int32_t pow_w(struct wtab *, int); @ 1.3 log @nuke trailing whitespace @ text @d1 1 a1 1 /* $NetBSD: altq_red.h,v 1.2 2000/12/14 08:49:51 thorpej Exp $ */ @ 1.3.4.1 log @sync with head. @ text @d1 2 a2 2 /* $NetBSD$ */ /* $KAME: altq_red.h,v 1.8 2003/07/10 12:07:49 kjc Exp $ */ d5 1 a5 1 * Copyright (C) 1997-2003 a34 1 #ifdef ALTQ3_COMPAT a74 1 #endif /* ALTQ3_COMPAT */ d101 1 a101 1 #ifdef ALTQ3_COMPAT a111 1 #endif /* ALTQ3_COMPAT */ a114 1 #ifdef ALTQ3_COMPAT a115 1 #endif d119 5 a123 5 struct wtab *w_next; int w_weight; int w_param_max; int w_refcount; int32_t w_tab[32]; d127 3 a129 3 int red_pkttime; /* average packet time in micro sec used for idle calibration */ int red_flags; /* red flags */ d132 4 a135 4 int red_weight; /* weight for EWMA */ int red_inv_pmax; /* inverse of max drop probability */ int red_thmin; /* red min threshold */ int red_thmax; /* red max threshold */ d138 12 a149 12 int red_wshift; /* log(red_weight) */ int red_thmin_s; /* th_min scaled by avgshift */ int red_thmax_s; /* th_max scaled by avgshift */ int red_probd; /* drop probability denominator */ int red_avg; /* queue len avg scaled by avgshift */ int red_count; /* packet count since last dropped/ marked packet */ int red_idle; /* queue was empty */ int red_old; /* avg is above th_min */ struct wtab *red_wtab; /* weight table */ struct timeval red_last; /* time when the queue becomes idle */ a150 1 #ifdef ALTQ3_COMPAT a151 1 #endif a161 1 #ifdef ALTQ3_COMPAT a169 1 #endif /* ALTQ3_COMPAT */ d176 11 a186 11 extern red_t *red_alloc(int, int, int, int, int, int); extern void red_destroy(red_t *); extern void red_getstats(red_t *, struct redstats *); extern int red_addq(red_t *, class_queue_t *, struct mbuf *, struct altq_pktattr *); extern struct mbuf *red_getq(red_t *, class_queue_t *); extern int drop_early(int, int, int); extern int mark_ecn(struct mbuf *, struct altq_pktattr *, int); extern struct wtab *wtab_alloc(int); extern int wtab_destroy(struct wtab *); extern int32_t pow_w(struct wtab *, int); @ 1.2 log @Add NetBSD RCS IDs. @ text @d1 1 a1 1 /* $NetBSD$ */ d102 1 a102 1 /* @ 1.2.2.1 log @file altq_red.h was added on branch thorpej_scsipi on 2001-01-05 17:39:37 +0000 @ text @d1 190 @ 1.2.2.2 log @Sync with HEAD @ text @a0 190 /* $NetBSD: altq_red.h,v 1.2.2.1 2001/01/05 17:39:37 bouyer Exp $ */ /* $KAME: altq_red.h,v 1.5 2000/12/14 08:12:46 thorpej Exp $ */ /* * Copyright (C) 1997-2000 * Sony Computer Science Laboratories Inc. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY SONY CSL AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL SONY CSL OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. */ #ifndef _ALTQ_ALTQ_RED_H_ #define _ALTQ_ALTQ_RED_H_ #include struct red_interface { char red_ifname[IFNAMSIZ]; }; struct red_stats { struct red_interface iface; int q_len; int q_avg; struct pktcntr xmit_cnt; struct pktcntr drop_cnt; u_int drop_forced; u_int drop_unforced; u_int marked_packets; /* static red parameters */ int q_limit; int weight; int inv_pmax; int th_min; int th_max; /* flowvalve related stuff */ u_int fv_flows; u_int fv_pass; u_int fv_predrop; u_int fv_alloc; u_int fv_escape; }; struct red_conf { struct red_interface iface; int red_weight; /* weight for EWMA */ int red_inv_pmax; /* inverse of max drop probability */ int red_thmin; /* red min threshold */ int red_thmax; /* red max threshold */ int red_limit; /* max queue length */ int red_pkttime; /* average packet time in usec */ int red_flags; /* see below */ }; /* red flags */ #define REDF_ECN4 0x01 /* use packet marking for IPv4 packets */ #define REDF_ECN6 0x02 /* use packet marking for IPv6 packets */ #define REDF_ECN (REDF_ECN4 | REDF_ECN6) #define REDF_FLOWVALVE 0x04 /* use flowvalve (aka penalty-box) */ /* * simpler versions of red parameters and statistics used by other * disciplines (e.g., CBQ) */ struct redparams { int th_min; /* red min threshold */ int th_max; /* red max threshold */ int inv_pmax; /* inverse of max drop probability */ }; struct redstats { int q_avg; struct pktcntr xmit_cnt; struct pktcntr drop_cnt; u_int drop_forced; u_int drop_unforced; u_int marked_packets; }; /* * IOCTLs for RED */ #define RED_IF_ATTACH _IOW('Q', 1, struct red_interface) #define RED_IF_DETACH _IOW('Q', 2, struct red_interface) #define RED_ENABLE _IOW('Q', 3, struct red_interface) #define RED_DISABLE _IOW('Q', 4, struct red_interface) #define RED_CONFIG _IOWR('Q', 6, struct red_conf) #define RED_GETSTATS _IOWR('Q', 12, struct red_stats) #define RED_SETDEFAULTS _IOW('Q', 30, struct redparams) #ifdef _KERNEL struct flowvalve; /* weight table structure for idle time calibration */ struct wtab { struct wtab *w_next; int w_weight; int w_param_max; int w_refcount; int32_t w_tab[32]; }; typedef struct red { int red_pkttime; /* average packet time in micro sec used for idle calibration */ int red_flags; /* red flags */ /* red parameters */ int red_weight; /* weight for EWMA */ int red_inv_pmax; /* inverse of max drop probability */ int red_thmin; /* red min threshold */ int red_thmax; /* red max threshold */ /* variables for internal use */ int red_wshift; /* log(red_weight) */ int red_thmin_s; /* th_min scaled by avgshift */ int red_thmax_s; /* th_max scaled by avgshift */ int red_probd; /* drop probability denominator */ int red_avg; /* queue length average scaled by avgshift */ int red_count; /* packet count since the last dropped/marked packet */ int red_idle; /* queue was empty */ int red_old; /* avg is above th_min */ struct wtab *red_wtab; /* weight table */ struct timeval red_last; /* timestamp when the queue becomes idle */ struct flowvalve *red_flowvalve; /* flowvalve state */ struct { struct pktcntr xmit_cnt; struct pktcntr drop_cnt; u_int drop_forced; u_int drop_unforced; u_int marked_packets; } red_stats; } red_t; typedef struct red_queue { struct red_queue *rq_next; /* next red_state in the list */ struct ifaltq *rq_ifq; /* backpointer to ifaltq */ class_queue_t *rq_q; red_t *rq_red; } red_queue_t; /* red drop types */ #define DTYPE_NODROP 0 /* no drop */ #define DTYPE_FORCED 1 /* a "forced" drop */ #define DTYPE_EARLY 2 /* an "unforced" (early) drop */ extern red_t *red_alloc __P((int, int, int, int, int, int)); extern void red_destroy __P((red_t *)); extern void red_getstats __P((red_t *, struct redstats *)); extern int red_addq __P((red_t *, class_queue_t *, struct mbuf *, struct altq_pktattr *)); extern struct mbuf *red_getq __P((red_t *, class_queue_t *)); extern int drop_early __P((int, int, int)); extern int mark_ecn __P((struct mbuf *, struct altq_pktattr *, int)); extern struct wtab *wtab_alloc __P((int)); extern int wtab_destroy __P((struct wtab *)); extern int32_t pow_w __P((struct wtab *, int)); #endif /* _KERNEL */ #endif /* _ALTQ_ALTQ_RED_H_ */ @ 1.2.34.1 log @sync with -current @ text @d1 1 a1 1 /* $NetBSD: altq_red.h,v 1.3 2005/02/26 23:04:16 perry Exp $ */ d102 1 a102 1 /* @ 1.2.36.1 log @sync with head. xen and whitespace. xen part is not finished. @ text @d1 1 a1 1 /* $NetBSD: altq_red.h,v 1.2 2000/12/14 08:49:51 thorpej Exp $ */ d102 1 a102 1 /* @ 1.2.26.1 log @Sync with HEAD. Hi Perry! @ text @d1 1 a1 1 /* $NetBSD: altq_red.h,v 1.3 2005/02/26 23:04:16 perry Exp $ */ d102 1 a102 1 /* @ 1.1 log @Initial revision @ text @d1 1 @ 1.1.1.1 log @Import ALTQ from KAME. @ text @@