aboutsummaryrefslogtreecommitdiffstats
path: root/package/kernel/kmod-sched-cake
Commit message (Collapse)AuthorAgeFilesLines
* kmod-sched-cake: bump to 20200110Kevin Darbyshire-Bryant2020-01-111-2/+2
| | | | | | | | | | | | | | | | | Keep up with a small amount of churn in the upstream repository. Upstream now represents the version of CAKE as found in the linux kernel from 4.19 onwards but with some compatibility stubs to allow building on <4.19. After a diversion related to an experimental ECN implementation which has now been reverted, the important and relevant changes for us are: 8a8946b sch_cake: avoid possible divide by zero in cake_enqueue() 183b320 RFC 8622 diffserv3, 4 & 8 LE PHB support 6ff4561 sch_cake: Make sure we can write the IP header before changing DSCP bits 9fba602 sch_cake: Use tc_skb_protocol for getting packet protocol Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
* Revert "kmod-sched-cake: drop out of tree package, use kernel version"Kevin Darbyshire-Bryant2019-07-291-0/+42
| | | | | | This reverts commit 5c094ff660fd8e750ed1c1f38719a45065e77348. Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
* kmod-sched-cake: drop out of tree package, use kernel versionKevin Darbyshire-Bryant2019-07-081-42/+0
| | | | | | | | | | | | | | CAKE made it to kernel 4.19 and since OpenWrt now at kernel 4.19 we can drop the out of tree cake package in base repository. Add kmod-sched-cake to netsupport so package dependencies are still met. Similarly CAKE is retained as an optional qdisc module to avoid base scheduler package size implications. Backport upstream patches from k5.1 to address some small bugs and support fwmark usage. Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
* kernel: Remove support for kernel 3.18Hauke Mehrtens2019-05-031-1/+1
| | | | | | | | | | No target is using kernel 3.18 anymore, remove all the generic support for kernel 3.18. The removed packages are depending on kernel 3.18 only and are not used on any recent kernel. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* kmod-sched-cake: bump to latest cakeRyan Mounce2019-03-191-3/+3
| | | | | | | | | | | | | | | | Update the out of tree build of cake. Applicable patches are also in net-next. 057c738 Fix fwmark_shft assignment (again) ca6c162 Add support for storing mark back into conntrack 7ed9b6c Fix off-by-one error when setting fwmark_shft. a4a243a sch_cake: Interpret fwmark parameter as a bitmask 29d707e Simplify logic in cake_select_tin() 8acaaee Permit use of connmarks as tin classifiers 348f186 Make the dual modes fairer 99a7297 compat: Don't lock root qdisc when dumping stats on old kernels Signed-off-by: Ryan Mounce <ryan@mounce.com.au>
* kmod-sched-cake: bump to latest cakeKevin Darbyshire-Bryant2019-01-141-3/+3
| | | | | | | | | | 331ac70 Correctly update parent qlen when splitting GSO packets 581967c Makefile: Hook into Kbuild/Kconfig infrastructure The parent qlen change is relevant if using cake as a leaf qdisc, the makefile is a no-op. Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
* kmod-sched-cake: bump to 20181002Kevin Darbyshire-Bryant2018-10-022-26/+4
| | | | | | | | Revert "Add workaround for wrong skb->mac_len values after splitting GSO" Remove our local patch which did the same thing. Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
* kmod-sched-cake: don't gso fixup on fixed kernelsKevin Darbyshire-Bryant2018-10-022-1/+23
| | | | | | | | Kernels 4.14.73 & 4.9.140 include the gso fixup fix, so cake doesn't need to do it. Let's not waste cpu cycles by doing it in cake which could be really important on cpu constrained devices. Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
* kmod-sched-cake: fix 6in4/gso performance issueKevin Darbyshire-Bryant2018-09-121-3/+3
| | | | | | | | Bump to latest upstream cake: Add workaround for wrong skb->mac_len values after splitting GSO Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
* kmod-sched-cake: bump to 20180827Kevin Darbyshire-Bryant2018-08-311-3/+3
| | | | | | | Expand filter flow mapping to include hosts as well Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk> (cherry picked from commit d14ffdc307d36bd9abe908b46ff7baece54c9551)
* kmod-sched-cake: bump to 20180728 optional gso splitKevin Darbyshire-Bryant2018-08-021-3/+3
| | | | | | | | | Follow upstream kernel patch that restores always splitting gso packets by default whilst making the option configurable from (tc) userspace. No ABI/API change Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
* kmod-sched-cake: bump to 20180716Kevin Darbyshire-Bryant2018-07-161-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bump to the latest cake recipe. This backports tc class support to kernel 4.9 and other than conditional kernel compilation pre-processor macros represents the cake that has gone upstream into kernel 4.19. Loud cheer! Fun may be had by changing cake tin classification for packets on ingress. e.g. tc filter add dev ifb4eth0 parent 800b: protocol ip u32 match \ ip dport 6981 0xffff action skbedit priority 800b:1 Where 800b: represents the filter handle for the ifb obtained by 'tc qdisc' and the 1 from 800b:1 represents the cake tin number. So the above example puts all incoming packets destined for port 6981 into the BULK (lowest priority) tin. f39ab9a Obey tin_order for tc filter classifiers 1e2473f Clean up after latest backport. 82531d0 Reorder includes to fix out of tree compilation 52cbc00 Code style cleanup 6cdb496 Fix argument order for NL_SET_ERR_MSG_ATTR() cab17b6 Remove duplicate call to qdisc_watchdog_init() 71c7991 Merge branch 'backport-classful' 32aa7fb Fix compilation on Linux 4.9 9f8fe7a Fix compilation on Linux 4.14 ceab7a3 Rework filter classification aad5436 Fixed version of class stats be1c549 Add cake-specific class stats 483399d Use tin_order for class dumps 80dc129 Add class dumping 0c8e6c1 Fix dropping when using filters c220493 Add the minimum class ops 5ed54d2 Start implementing tc filter/class support Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
* kmod-sched-cake: bump to latest 20180706Kevin Darbyshire-Bryant2018-07-071-3/+3
| | | | | | | Fixes a potential infinite loop bug when in unlimited (ie not using built in shaper) mode. Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
* kmod-sched-cake: bump to latest cakeKevin Darbyshire-Bryant2018-07-031-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This bumps to the latest & possibly greatest cake, sadly it's still inedible but from an SQM point of view quite tasty :-) Main tweaks since previous bump, improved ack_filter, some extra stats, support for 64bit netlink parameters (higher rates/byte counters) 0520a6c Fix NAT option handling 8da93e1 Make sure we always call qdisc_watchdog_init() in cake_init() f65daf6 Fix mismatched parenthesis 51d4ab3 Change flag handling to be safe even when mixing with non-eligible ACKs f2ea091 ack_filter: protect DCTCP with stricter filtering of ECE marks 28b4560 ACK filter: Handle wrapping sequence numbers and DSACKs 73f62d9 Use the right PAD attribute for options 5969c14 Use 32 for tin backlog e289f31 Move all the u64 netlink attributes together 36180a0 Check ACK seqno before parsing SACKs 91bbc01 Merge branch 'mine' into cobalt 58c55ec Rework SACK check to compare the ranges of two SACKs 9a5d593 ack_filter: Add proper handling of SACKs eca95d4 ack_filter: short-circuit TCP flag check d50a246 compat: backport some ktime functions 7b7ad11 compat: define tcpopt_fastopen for pre-4.1 kernels ca54cdb Fix ktime compare 9d7dcc0 ack filter: Parse TCP options and only drop safe ones b119882 Return EOPNOTSUPP on NAT option if conntrack is not available 842d7f0 Don't try to pad stats with tin_stats padding bd46dc2 Use 64-bit divide helper 8e41bf0 Make sure we never drop SACKs when filtering ACKs 66e5d60 Avoid comparing ktime_t to scalar values 7fab017 Actually commit the ktime_t changes fca6d13 Switch to ktime_t and get rid of cobalt.h 6f7e5af Can't use do_div with 64-bit divisors Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
* kmod-sched-cake: bump to latest 20180515Kevin Darbyshire-Bryant2018-05-161-3/+3
| | | | | | | | Following changes as part of the kernel upstreaming attempts. And fix a slight fsck up when calculating overheads for GSO packets. Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
* kmod-sched-cake: bump to latest cake 2018-05-07Kevin Darbyshire-Bryant2018-05-081-3/+3
| | | | | | | | | | | | | | No functional change. Code tidy ups. 735eaf2 Make sure we don't reallocate q->tins (we didn't anyway but his really makes sure) 6c5ad6e Get rid of __GFP_NOWARN flag for memory allocation 2a37333 Don't need the wrapper for kvfree, and no need to check before calling it 2b1c631 Whitespace fix 7fe6e28 compat tidyup (for older kernel versions <4.4) 93b805c pedant tidy up superfluous semicolons on switch statements Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
* cake: bump to 20180504 bakeKevin Darbyshire-Bryant2018-05-071-3/+4
| | | | | | | | | | | | | | | | | | | The sender domain has a DMARC Reject/Quarantine policy which disallows sending mailing list messages using the original "From" header. To mitigate this problem, the original message has been wrapped automatically by the mailing list software. Cake is bearing fruits of kernel upstreaming efforts. diffserv-llt dropped. DSCP mapping paper died and no one using it. ack-filter re-written & simplified tc userspace & cake kmod netlink interface usage changed in non backwards compatible way, thus this once requires tc & cake to be in-step. Change due to upstream requirements. Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
* kmod-sched-cake: split stats structures, add overhead statsKevin Darbyshire-Bryant2018-03-231-3/+3
| | | | | | | | | | | | | | Relevant changes: 0afc1be Fixes for kernel 4.16 d2d6780 Reinitialise overhead compensation stats when reconfiguring. a3bab9d Export overhead compensation stats to userspace. 9cd2fa8 Split tin stats to its own structure to decrease size of tc_cake_xstats 71c7b44 Gather more statistics about packet length transformations. 0517357 Rework overhead compensation to use dynamic transport header offset instead of (inaccurate) static one. c1a0c8e Refactor length handling code to better centralise overhead calculations Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
* kmod-sched-cake: bump to latest cake bakeKevin Darbyshire-Bryant2018-01-111-3/+3
| | | | | | | | | | | | | | | | | More important bug fix: 402f05c Use full-rate mtu_time in all tins. Fixes an issue where some cake tins experienced excessive latency since 49776da (dynamically adjust target) Minor bug fixes: 31277c2 Avoid unsigned comparison against zero. Fix compiler warning, no known impact. 8cf5278 ack_filter: fix TCP flag check. A very contrived case may have lead to dropping a SYN packet that should not be dropped. Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
* kmod-sched-cake: bump to latest bakeKevin Darbyshire-Bryant2017-12-301-3/+3
| | | | | | | | | Fix overhead accounting error introduced by f33c4d6 refactor cake_advance_shaper and ack_filter Symptoms were links running under rate. Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
* kmod-sched-cake: bump to latest bake of cakeKevin Darbyshire-Bryant2017-12-151-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | There has been recent significant activity with the cake qdisc of late but in the cobalt branch. Some of that effort is related to upstreaming to kernel & iproute2 mainline but we're not quite there yet. Relevant feature changes: ingress mode: Instead of only counting packets that make it past the shaper, include packets we've decided to drop as well, since they did arrive with us on the link and took link capacity. This mode is more suitable for shaping the ingress of a link (e.g. from ISP) rather than the more normal egress. ptm mode: Minor optimisation in packet overhead calculation. dual-src/dsthost/triple-isolate: Optimise only calculating src or dst host hashes only if required. ack-filter/ack-filter-aggressive: Filter excessive TCP ACKS. Useful in highly assymetric links (downstream v upstream capacity) where the majority of upstream link capacity is occupied with ACKS for downstream traffic. A separate iproute2 patch to teach it about Cake's new features will follow. Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
* kmod-sched-cake: update to latest git HEADFushan Wen2017-11-251-3/+3
| | | | | | | | | | dfb2f6c pkt_sched: make compile again 5ab7026 sch_cake: make compile again 6f28803 codel5: make more checkpatch compliant bd426aa Fix build error on 4.12 e4a3628 Whitespace tidy up Signed-off-by: Fushan Wen <qydwhotmail@gmail.com>
* kmod-sched-cake: drop maintainerKevin Darbyshire-Bryant2017-07-151-1/+0
| | | | | | Drop myself from maintainership of 'cake'. Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
* build: add KERNEL_MAKE and KERNEL_MAKE_FLAGS variables and move to kernel.mkFelix Fietkau2017-06-071-1/+1
| | | | | | | | This allows packages to use kernel make options without the forced -C $(LINUX_DIR). It also makes it more clear that it to be called from kernel module packages directly. Signed-off-by: Felix Fietkau <nbd@nbd.name>
* kmod-sched-cake: Bump to latest versionKevin Darbyshire-Bryant2017-01-301-4/+4
| | | | | | | | | wash, mpu & some memory optimisation have now made it to the official cake repository. Point LEDE to the official repository. Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
* kmod-sched-cake: add 'mpu' minimum packet length supportKevin Darbyshire-Bryant2017-01-261-3/+3
| | | | | | | Add 'mpu' minimum packet length for scheduling/bandwidth accounting purposes. Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
* kmod-sched-cake: fix parameter passing kernel/user spaceKevin Darbyshire-Bryant2017-01-211-3/+3
| | | | | | | | | | | | The last two parameters passed between user space tc and kernel space sched-cake were transposed due to a merge mistake in a parameter header file. As such, using a packet overhead figure was likely to set cake to wash packet DSCP values. Similarly, the DSCP wash flag was used as an offset to the displayed packet overhead value. Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
* kmod-sched-cake: do not build on kernel 3.18Hauke Mehrtens2016-12-251-1/+1
| | | | | | | kmod-sched-cake does not build on kernel 3.18, so add the dependency to not even try. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* treewide: clean up and unify PKG_VERSION for git based downloadsFelix Fietkau2016-12-221-5/+3
| | | | | | Also use default defintions for PKG_SOURCE_SUBDIR, PKG_SOURCE Signed-off-by: Felix Fietkau <nbd@nbd.name>
* kmod-sched-cake: diffserv3 & change defaultsKevin Darbyshire-Bryant2016-12-201-3/+3
| | | | | | | | | | | Follow upstream cake: diffserv3: a simple 3 tin classifier more in line with sqm-scripts defaults for other qdisc algorithms. defaults: default qdisc options are now diffserv3 and triple-isolate. Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
* treewide: clean up download hashesFelix Fietkau2016-12-161-1/+1
| | | | | | Replace *MD5SUM with *HASH, replace MD5 hashes with SHA256 Signed-off-by: Felix Fietkau <nbd@nbd.name>
* kmod-sched-cake: update & restore DSCP washingKevin Darbyshire-Bryant2016-12-121-4/+4
| | | | | | | | | | | | | | | | | | | | | | | Track upstream changes, incl changes in packet overhead accounting (automatically taking care of linux' packet sizing knowledge), improvements to triple isolated DRR handling (new flow dominance), statistics tweak & allow more packet drops in stressed conditions. Under tests this has significantly improved latency control under 'many flows to one' scenarious as is typical of bittorrent and MS Windows update. I also restored 'DSCP washing' functionality in my repo which follows upstream closely (like a hawk!) with tc keywords 'wash/nowash'. This allows cake to limit/control packets in bands determined by a packet's DSCP but to clear those DSCP bits on qdisc egress. This functionality was originally removed as part of an attempt to push cake into the kernel, which hasn't actually happened as yet. A matching commit is required to iproute2/tc to support the new overhead handling, keyword changes as well as the 'wash/nowash' tweak. Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
* source: Switch to xz for packages and tools where possibleDaniel Engberg2016-10-061-1/+2
| | | | | | | | | | | * Change git packages to xz * Update mirror checksums in packages where they are used * Change a few source tarballs to xz if available upstream * Remove unused lines in packages we're touching, requested by jow- and blogic * We're relying more on xz-utils so add official mirror as primary source, master site as secondary. * Add SHA256 checksums to multiple git tarball packages Signed-off-by: Daniel Engberg <daniel.engberg.lists@pyret.net>
* kmod-sched-cake: update to 161002 versionKevin Darbyshire-Bryant2016-10-041-2/+3
| | | | | | | | | | | Implement IPv4 de-masquerading. * Implement PTM (VDSL2) overhead 65/64 compensation. * Update diffserv4 priorities. *Requires corresponding update to iproute2/tc for user/kernel space handling. Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
* kmod-sched-cake: Switch to COBALT algorithmKevin Darbyshire-Bryant2016-06-301-7/+5
| | | | | | | | COBALT is a hybrid codel/blue algo combining best elements of both. Exhibits improved behaviour in presence of abuse from unresponsive flows handled by 'blue', whereas responsive flows are still handled by codel. Signed-off-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>
* packages: prefer http over git for git protocolHauke Mehrtens2016-06-221-1/+1
| | | | | | | | | In company networks everything except the http and https protocol is often causes problems, because the network administrators try to block everything else. To make it easier to use LEDE in company networks use the https/http protocol for git access when possible. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
* kmod-sched-cake: Add support for cake qdiscHannu Nyman2016-06-061-0/+44
Add 'cake' qdisc kernel module package. V2 - KDB Small update to base on latest cake tc changes (wash option deprecated) V3 - KDB Move kmod-sched-cake package to kernel as is kernel related V4 - KDB Split into individual patches, kmod & tc Signed-off-by: Hannu Nyman <hannu.nyman@iki.fi> Acked-by: Kevin Darbyshire-Bryant <kevin@darbyshire-bryant.me.uk>