From mboxrd@z Thu Jan 1 00:00:00 1970 From: Nishanth Devarajan Subject: Re: [PATCH net-next] net:sched: add gkprio scheduler Date: Tue, 8 May 2018 15:42:11 +0530 Message-ID: <20180508101210.GB4383@gmail.com> References: <20180507093626.GA5794@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: jiri@resnulli.us, jhs@mojatatu.com, davem@davemloft.net, netdev@vger.kernel.org, doucette@bu.edu, michel@digirati.com.br To: Cong Wang Return-path: Received: from mail-ot0-f195.google.com ([74.125.82.195]:45655 "EHLO mail-ot0-f195.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754366AbeEHKMT (ORCPT ); Tue, 8 May 2018 06:12:19 -0400 Received: by mail-ot0-f195.google.com with SMTP id 15-v6so20606407otn.12 for ; Tue, 08 May 2018 03:12:18 -0700 (PDT) Content-Disposition: inline In-Reply-To: Sender: netdev-owner@vger.kernel.org List-ID: On Mon, May 07, 2018 at 10:24:51PM -0700, Cong Wang wrote: > On Mon, May 7, 2018 at 2:36 AM, Nishanth Devarajan wrote: > > net/sched: add gkprio scheduler > > > > Gkprio (Gatekeeper Priority Queue) is a queueing discipline that prioritizes > > IPv4 and IPv6 packets accordingly to their DSCP field. Although Gkprio can be > > employed in any QoS scenario in which a higher DSCP field means a higher > > priority packet, Gkprio was concieved as a solution for denial-of-service > > defenses that need to route packets with different priorities. > > > Can we give it a better name? "Gatekeeper" is meaningless if we read > it alone, it ties to your Gatekeeper project which is more than just this > kernel module. Maybe "DS Priority Queue"? > Yes, we should be able to come up with a better name, we'll work on it. > Overall it looks good to me, just one thing below: > > > +struct Qdisc_ops gkprio_qdisc_ops __read_mostly = { > > + .id = "gkprio", > > + .priv_size = sizeof(struct gkprio_sched_data), > > + .enqueue = gkprio_enqueue, > > + .dequeue = gkprio_dequeue, > > + .peek = qdisc_peek_dequeued, > > + .init = gkprio_init, > > + .reset = gkprio_reset, > > + .change = gkprio_change, > > + .dump = gkprio_dump, > > + .destroy = gkprio_destroy, > > + .owner = THIS_MODULE, > > +}; > > You probably want to add Qdisc_class_ops here so that you can > dump the stats of each internal queue. Alright, will make some changes and send in a v2. Thanks, Nishanth