From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail.toke.dk (mail.toke.dk [IPv6:2001:470:dc45:1000::1]) (using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by lists.bufferbloat.net (Postfix) with ESMTPS id B12FC3CB35 for ; Wed, 22 Aug 2018 05:37:10 -0400 (EDT) From: Toke =?utf-8?Q?H=C3=B8iland-J=C3=B8rgensen?= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=toke.dk; s=20161023; t=1534930629; bh=+dfevGJ6/EpUH0o0ULJf81BgSTR9axHkQa/lVMPXUbg=; h=From:To:Cc:Subject:In-Reply-To:References:Date:From; b=DalgfK3V4LrcNcyvS11jRk4d/fCb+VqlQDtHrTGQUhZhObrHf+BUErr4cwLJ8fDkJ llWSnXpLmTFOZuw8CRG91dvP0s81T88a07eKiKqVgaNlp4rSi3OeOBLLBkmL3okYNS MUPUyb2axll/MOAmFaCLfDF6VxRxY+mwwk/PcsHr4RdQqdbhF4CtcFpROj9bW3Z6YQ VuxFu+ZgXGMHgo2Mk1yUu9vtSAg08OlGqbZ8ggDNyRcBstN4X8SnjBJlKEvlwp9ICZ CUW4CCKLZ546yrMtc8ULWj6vPWjtoe1xNJZA5GXSYnYi8gRuDwZUxVYf+K/TK5M+tf rkHUKn83mNpjw== To: Pete Heist , Jonathan Morton Cc: Cake List In-Reply-To: <03B32CF6-2926-42A7-A407-CBD16BA38F0D@heistp.net> References: <87h8jze5hk.fsf@toke.dk> <85C60B2F-78D0-4AEE-871C-BB637785BF62@gmail.com> <4D28C453-5378-4A5B-9E05-874F36C4DB30@gmail.com> <878t5aedj5.fsf@toke.dk> <87d0uc9d2f.fsf@toke.dk> <03B32CF6-2926-42A7-A407-CBD16BA38F0D@heistp.net> Date: Wed, 22 Aug 2018 11:37:09 +0200 X-Clacks-Overhead: GNU Terry Pratchett Message-ID: <87tvnm91yy.fsf@toke.dk> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Subject: Re: [Cake] issue with Cake and bpf filter X-BeenThere: cake@lists.bufferbloat.net X-Mailman-Version: 2.1.20 Precedence: list List-Id: Cake - FQ_codel the next generation List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 22 Aug 2018 09:37:10 -0000 Pete Heist writes: >> On Aug 22, 2018, at 8:17 AM, Jonathan Morton wro= te: >>=20 >>> On 22 Aug, 2018, at 12:06 am, Pete Heist wrote: >>>=20 >>> when fq_codel is the qdisc, the eBPF action is only called "once in a w= hile=E2=80=9D >>=20 >> One difference between fq_codel and Cake is that the former - which >> has no shaper - will "bypass" packets when it's empty and there's no >> back-pressure filling it. In that case no packet classification >> occurs and filters will not be called. Or at least, that's how it >> used to be set up; I haven't looked at it recently. Cake does not >> rely on the same set of assumptions, so will always call the filter. > > Aha, that sounds likely, I=E2=80=99ll try with htb and a rate limit. Test= ing > with fq_codel was challenging as I had to =E2=80=9Cdo stuff=E2=80=9D unti= l my printk=E2=80=99s > were eventually called, but it=E2=80=99s easier now that I can use cake. I > suppose in my case fq_codel=E2=80=99s behavior would be ok in production, > because if there=E2=80=99s no queue then there=E2=80=99s no need to class= ify. Maybe in > some other cases (like gathering stats), it could be problematic. fq_codel turns off the bypass capability if you attach a tc filter to it, though, so if the issue you're seeing is that you filter function is not being called, that sounds... strange... How do you check if the function is being called? -Toke