lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Mon, 16 May 2016 01:47:30 +0300 From: Roman Yeryomin <leroi.lists@...il.com> To: Kevin Darbyshire-Bryant <kevin@...byshire-bryant.me.uk> Cc: Jesper Dangaard Brouer <brouer@...hat.com>, Eric Dumazet <eric.dumazet@...il.com>, Felix Fietkau <nbd@...nwrt.org>, Dave Taht <dave.taht@...il.com>, make-wifi-fast@...ts.bufferbloat.net, Rafał Miłecki <zajec5@...il.com>, ath10k <ath10k@...ts.infradead.org>, "netdev@...r.kernel.org" <netdev@...r.kernel.org>, "codel@...ts.bufferbloat.net" <codel@...ts.bufferbloat.net>, Jonathan Morton <chromatix99@...il.com> Subject: Re: OpenWRT wrong adjustment of fq_codel defaults (Was: [Codel] fq_codel_drop vs a udp flood) On 7 May 2016 at 12:57, Kevin Darbyshire-Bryant <kevin@...byshire-bryant.me.uk> wrote: > > > On 06/05/16 10:42, Jesper Dangaard Brouer wrote: >> Hi Felix, >> >> This is an important fix for OpenWRT, please read! >> >> OpenWRT changed the default fq_codel sch->limit from 10240 to 1024, >> without also adjusting q->flows_cnt. Eric explains below that you must >> also adjust the buckets (q->flows_cnt) for this not to break. (Just >> adjust it to 128) >> >> Problematic OpenWRT commit in question: >> http://git.openwrt.org/?p=openwrt.git;a=patch;h=12cd6578084e >> 12cd6578084e ("kernel: revert fq_codel quantum override to prevent it from causing too much cpu load with higher speed (#21326)") > I 'pull requested' this to the lede-staging tree on github. > https://github.com/lede-project/staging/pull/11 > > One way or another Felix & co should see the change :-) If you would follow the white rabbit, you would see that it doesn't help >> >> >> I also highly recommend you cherry-pick this very recent commit: >> net-next: 9d18562a2278 ("fq_codel: add batch ability to fq_codel_drop()") >> https://git.kernel.org/davem/net-next/c/9d18562a227 >> >> This should fix very high CPU usage in-case fq_codel goes into drop mode. >> The problem is that drop mode was considered rare, and implementation >> wise it was chosen to be more expensive (to save cycles on normal mode). >> Unfortunately is it easy to trigger with an UDP flood. Drop mode is >> especially expensive for smaller devices, as it scans a 4K big array, >> thus 64 cache misses for small devices! >> >> The fix is to allow drop-mode to bulk-drop more packets when entering >> drop-mode (default 64 bulk drop). That way we don't suddenly >> experience a significantly higher processing cost per packet, but >> instead can amortize this. > I haven't done the above cherry-pick patch & backport patch creation for > 4.4/4.1/3.18 yet - maybe if $dayjob permits time and no one else beats > me to it :-) > > Kevin >
Powered by blists - more mailing lists