X-Git-Url: http://git.rohieb.name/openwrt.git/blobdiff_plain/87d63287294cc8ca53100267ec130e258a142c08..e036e1ee00f161bf22a30715403cb940ae744ec1:/target/linux/generic-2.6/patches-2.6.23/200-sched_esfq.patch diff --git a/target/linux/generic-2.6/patches-2.6.23/200-sched_esfq.patch b/target/linux/generic-2.6/patches-2.6.23/200-sched_esfq.patch index b68fafef7..06c9c7bc9 100644 --- a/target/linux/generic-2.6/patches-2.6.23/200-sched_esfq.patch +++ b/target/linux/generic-2.6/patches-2.6.23/200-sched_esfq.patch @@ -1,7 +1,6 @@ -diff -Naur linux-2.6.21.5.orig/include/linux/pkt_sched.h linux-2.6.21.5/include/linux/pkt_sched.h ---- linux-2.6.21.5.orig/include/linux/pkt_sched.h 2007-06-11 11:37:06.000000000 -0700 -+++ linux-2.6.21.5/include/linux/pkt_sched.h 2007-06-22 22:53:46.000000000 -0700 -@@ -146,8 +146,37 @@ +--- a/include/linux/pkt_sched.h ++++ b/include/linux/pkt_sched.h +@@ -155,8 +155,37 @@ struct tc_sfq_qopt * * The only reason for this is efficiency, it is possible * to change these parameters in compile time. @@ -39,10 +38,9 @@ diff -Naur linux-2.6.21.5.orig/include/linux/pkt_sched.h linux-2.6.21.5/include/ /* RED section */ enum -diff -Naur linux-2.6.21.5.orig/net/sched/Kconfig linux-2.6.21.5/net/sched/Kconfig ---- linux-2.6.21.5.orig/net/sched/Kconfig 2007-06-11 11:37:06.000000000 -0700 -+++ linux-2.6.21.5/net/sched/Kconfig 2007-06-23 14:11:02.000000000 -0700 -@@ -189,6 +189,37 @@ +--- a/net/sched/Kconfig ++++ b/net/sched/Kconfig +@@ -144,6 +144,37 @@ config NET_SCH_SFQ To compile this code as a module, choose M here: the module will be called sch_sfq. @@ -80,10 +78,9 @@ diff -Naur linux-2.6.21.5.orig/net/sched/Kconfig linux-2.6.21.5/net/sched/Kconfi config NET_SCH_TEQL tristate "True Link Equalizer (TEQL)" ---help--- -diff -Naur linux-2.6.21.5.orig/net/sched/Makefile linux-2.6.21.5/net/sched/Makefile ---- linux-2.6.21.5.orig/net/sched/Makefile 2007-06-11 11:37:06.000000000 -0700 -+++ linux-2.6.21.5/net/sched/Makefile 2007-06-22 22:53:46.000000000 -0700 -@@ -23,6 +23,7 @@ +--- a/net/sched/Makefile ++++ b/net/sched/Makefile +@@ -22,6 +22,7 @@ obj-$(CONFIG_NET_SCH_GRED) += sch_gred.o obj-$(CONFIG_NET_SCH_INGRESS) += sch_ingress.o obj-$(CONFIG_NET_SCH_DSMARK) += sch_dsmark.o obj-$(CONFIG_NET_SCH_SFQ) += sch_sfq.o @@ -91,9 +88,8 @@ diff -Naur linux-2.6.21.5.orig/net/sched/Makefile linux-2.6.21.5/net/sched/Makef obj-$(CONFIG_NET_SCH_TBF) += sch_tbf.o obj-$(CONFIG_NET_SCH_TEQL) += sch_teql.o obj-$(CONFIG_NET_SCH_PRIO) += sch_prio.o -diff -Naur linux-2.6.21.5.orig/net/sched/sch_esfq.c linux-2.6.21.5/net/sched/sch_esfq.c ---- linux-2.6.21.5.orig/net/sched/sch_esfq.c 1969-12-31 16:00:00.000000000 -0800 -+++ linux-2.6.21.5/net/sched/sch_esfq.c 2007-06-23 19:18:00.000000000 -0700 +--- /dev/null ++++ b/net/sched/sch_esfq.c @@ -0,0 +1,702 @@ +/* + * net/sched/sch_esfq.c Extended Stochastic Fairness Queueing discipline. @@ -239,7 +235,7 @@ diff -Naur linux-2.6.21.5.orig/net/sched/sch_esfq.c linux-2.6.21.5/net/sched/sch + switch (skb->protocol) { + case __constant_htons(ETH_P_IP): + { -+ struct iphdr *iph = skb->nh.iph; ++ struct iphdr *iph = ip_hdr(skb); + info.dst = iph->daddr; + info.src = iph->saddr; + if (!(iph->frag_off&htons(IP_MF|IP_OFFSET)) && @@ -255,7 +251,7 @@ diff -Naur linux-2.6.21.5.orig/net/sched/sch_esfq.c linux-2.6.21.5/net/sched/sch + } + case __constant_htons(ETH_P_IPV6): + { -+ struct ipv6hdr *iph = skb->nh.ipv6h; ++ struct ipv6hdr *iph = ipv6_hdr(skb); + /* Hash ipv6 addresses into a u32. This isn't ideal, + * but the code is simple. */ + info.dst = jhash2(iph->daddr.s6_addr32, 4, q->perturbation);