From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jiri Pirko Subject: Re: [patch net-next RFC 1/9] net_sch: red: Add offload ability to RED qdisc Date: Tue, 31 Oct 2017 08:41:51 +0100 Message-ID: <20171031074151.GD1972@nanopsycho.orion> References: <20171030085613.8697-1-jiri@resnulli.us> <20171030085613.8697-2-jiri@resnulli.us> <20171030.212015.742241045938302800.davem@davemloft.net> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: Nogah Frankel , David Miller , "netdev@vger.kernel.org" , "jhs@mojatatu.com" , "xiyou.wangcong@gmail.com" , mlxsw , "andrew@lunn.ch" , "vivien.didelot@savoirfairelinux.com" , "f.fainelli@gmail.com" , "michael.chan@broadcom.com" , "ganeshgr@chelsio.com" , Saeed Mahameed , Matan Barak , Leon Romanovsky , Ido Schimmel , "jakub.kicinski@netronome.com" , "simon.horman@netronome.com" Return-path: Received: from mail-wr0-f195.google.com ([209.85.128.195]:48810 "EHLO mail-wr0-f195.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752174AbdJaHlx (ORCPT ); Tue, 31 Oct 2017 03:41:53 -0400 Received: by mail-wr0-f195.google.com with SMTP id 15so15015650wrb.5 for ; Tue, 31 Oct 2017 00:41:52 -0700 (PDT) Content-Disposition: inline In-Reply-To: Sender: netdev-owner@vger.kernel.org List-ID: Mon, Oct 30, 2017 at 08:24:20PM CET, dsahern@gmail.com wrote: >On 10/30/17 7:54 AM, Nogah Frankel wrote: >>>> diff --git a/include/uapi/linux/pkt_sched.h b/include/uapi/linux/pkt_sched.h >>>> index 0e88cc2..743c42a 100644 >>>> --- a/include/uapi/linux/pkt_sched.h >>>> +++ b/include/uapi/linux/pkt_sched.h >>>> @@ -255,6 +255,7 @@ struct tc_red_qopt { >>>> #define TC_RED_ECN 1 >>>> #define TC_RED_HARDDROP 2 >>>> #define TC_RED_ADAPTATIVE 4 >>>> +#define TC_RED_OFFLOADED 8 >>>> }; >>>> >>>> struct tc_red_xstats { >>> >>> What keeps a user from setting this flag in the tc_red_qopt it >>> passes into the a change operation? >> >> Nothing keeps the user from doing it, but it has no effect. >> The decision to offload is the driver's only. >> It is basically a read-only flag. >> > >If it is read-only, then attempts to set it from userspace should cause >the command to fail. That breaks uapi. Consider existing userspace app sending garbage in that bit and new kernel which randomly fails upon the garbage.