diff options
author | andre <andre@FreeBSD.org> | 2004-08-11 10:42:59 +0000 |
---|---|---|
committer | andre <andre@FreeBSD.org> | 2004-08-11 10:42:59 +0000 |
commit | d03ce8b4a3fcc801ff26a065d71e1ff5388cf825 (patch) | |
tree | d7cbfd99b0871b22e282b823cf253e5752f7ce5b | |
parent | 59569e26479c5835c006f34e99cc472a2d1c23a3 (diff) | |
download | FreeBSD-src-d03ce8b4a3fcc801ff26a065d71e1ff5388cf825.zip FreeBSD-src-d03ce8b4a3fcc801ff26a065d71e1ff5388cf825.tar.gz |
Make IP fastforwarding ALTQ-aware by adding the input traffic conditioner
check and disabling the early output interface queue length check.
-rw-r--r-- | sys/netinet/ip_fastfwd.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/sys/netinet/ip_fastfwd.c b/sys/netinet/ip_fastfwd.c index 771c722..6b6d24d 100644 --- a/sys/netinet/ip_fastfwd.c +++ b/sys/netinet/ip_fastfwd.c @@ -283,6 +283,14 @@ ip_fastforward(struct mbuf *m) goto drop; } +#ifdef ALTQ + /* + * Is packet dropped by traffic conditioner? + */ + if (altq_input != NULL && (*altq_input)(m, AF_INET) == 0) + return 1; +#endif + /* * Step 2: fallback conditions to normal ip_input path processing */ @@ -669,6 +677,7 @@ droptoours: /* Used for DIVERT */ goto consumed; } +#ifndef ALTQ /* * Check if there is enough space in the interface queue */ @@ -678,6 +687,7 @@ droptoours: /* Used for DIVERT */ /* would send source quench here but that is depreciated */ goto drop; } +#endif /* * Check if media link state of interface is not down |