From mboxrd@z Thu Jan 1 00:00:00 1970 From: Cong Wang Subject: Re: [PATCH net-next v12 2/7] sch_cake: Add ingress mode Date: Wed, 16 May 2018 14:09:00 -0700 Message-ID: References: <152650253056.25701.10138252969621361651.stgit@alrua-kau> <152650254608.25701.5749607607862123240.stgit@alrua-kau> Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Cc: Linux Kernel Network Developers , Cake List To: =?UTF-8?B?VG9rZSBIw7hpbGFuZC1Kw7hyZ2Vuc2Vu?= Return-path: Received: from mail-pg0-f67.google.com ([74.125.83.67]:45521 "EHLO mail-pg0-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751985AbeEPVJV (ORCPT ); Wed, 16 May 2018 17:09:21 -0400 Received: by mail-pg0-f67.google.com with SMTP id w3-v6so806948pgv.12 for ; Wed, 16 May 2018 14:09:21 -0700 (PDT) In-Reply-To: <152650254608.25701.5749607607862123240.stgit@alrua-kau> Sender: netdev-owner@vger.kernel.org List-ID: On Wed, May 16, 2018 at 1:29 PM, Toke H=C3=B8iland-J=C3=B8rgensen wrote: > + if (tb[TCA_CAKE_AUTORATE]) { > + if (!!nla_get_u32(tb[TCA_CAKE_AUTORATE])) > + q->rate_flags |=3D CAKE_FLAG_AUTORATE_INGRESS; > + else > + q->rate_flags &=3D ~CAKE_FLAG_AUTORATE_INGRESS; > + } > + > + if (tb[TCA_CAKE_INGRESS]) { > + if (!!nla_get_u32(tb[TCA_CAKE_INGRESS])) > + q->rate_flags |=3D CAKE_FLAG_INGRESS; > + else > + q->rate_flags &=3D ~CAKE_FLAG_INGRESS; > + } > + > if (tb[TCA_CAKE_MEMORY]) > q->buffer_config_limit =3D nla_get_u32(tb[TCA_CAKE_MEMORY= ]); > > @@ -1559,6 +1628,14 @@ static int cake_dump(struct Qdisc *sch, struct sk_= buff *skb) > if (nla_put_u32(skb, TCA_CAKE_MEMORY, q->buffer_config_limit)) > goto nla_put_failure; > > + if (nla_put_u32(skb, TCA_CAKE_AUTORATE, > + !!(q->rate_flags & CAKE_FLAG_AUTORATE_INGRESS))) > + goto nla_put_failure; > + > + if (nla_put_u32(skb, TCA_CAKE_INGRESS, > + !!(q->rate_flags & CAKE_FLAG_INGRESS))) > + goto nla_put_failure; > + Why do you want to dump each bit of the rate_flags separately rather than dumping the whole rate_flags as an integer?