Received: by 2002:a05:6a10:8c0a:0:0:0:0 with SMTP id go10csp2756273pxb; Tue, 9 Mar 2021 10:02:49 -0800 (PST) X-Google-Smtp-Source: ABdhPJxyMHJL+wCUoQLr+Wmv9yxCE4Yst7xzvqvAspGdaVsJoYjh8pP2mcnhAoOyDKTFLWdxraqU X-Received: by 2002:aa7:d385:: with SMTP id x5mr5623255edq.289.1615312969315; Tue, 09 Mar 2021 10:02:49 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1615312969; cv=none; d=google.com; s=arc-20160816; b=YFv6F4kGX5I+SbKyPKQH9F5yj/8bjjlBDXcZWe3GnJfSbGABFWZYvAhxvWMR21Vra4 2+7oioQIVy0u17wpLOz86OQ33hW5G6mvX8Ql70elTVp3kZQa0ZHYZ7QejlOjPz6Db1KC lY5+38BwxBw66WlI1tFp0O2/e20uwpgg0uVTmGhe7DwwVuGpozmxiawK46NtrhJvqyVj u1qgaT3K173fql/2tyGvUvncWNgHtl0HFifmJpS0RmsgSCz+mRQkm5JbwRdFXwvwg7LL uEbELvTbJphKaQ4seOstya1BUwZnncLp4+ZwcEZI/O/phyIxQ1wW6EGHjp+eB0/X2MO/ aJOg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version; bh=d09tCXoDPz/gPvVq2LzHz5z3xcmuD/lr6SC5zub3HT8=; b=H8aGGDuZKfBWKH8ouswTCipF1BX8mApX8FxROI1KgPbXyORHJsmxj3uDW+hVN+BcZt zTRjO8vRhdkq10C+OaQMun34Ch1vCSevwgFelsc7n8QHXseDsvGF90z8ba8cTMmUAYbW pLo5uIRZ7SFADNyDUDoCospC0cVqmQ+NmYaixzHGNmQqirSYgj89m2inN/i4P5JvmQle PgRA6XMWvi+wTRVVEh4Wb9Nu5rMe7srSucLHo/WuNfV840HITqK/LiWDuuSLaJYx2MqT yC00NKFXVJk2cpy07doRVXGDqODtcHTmbnKJuLmnu/rYbidglxLyc1frZMmuTACegtie 0D7g== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id ec1si10187203ejb.598.2021.03.09.10.02.25; Tue, 09 Mar 2021 10:02:49 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231631AbhCISBY (ORCPT + 99 others); Tue, 9 Mar 2021 13:01:24 -0500 Received: from mail-yb1-f170.google.com ([209.85.219.170]:35722 "EHLO mail-yb1-f170.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231386AbhCISAy (ORCPT ); Tue, 9 Mar 2021 13:00:54 -0500 Received: by mail-yb1-f170.google.com with SMTP id p186so14921977ybg.2; Tue, 09 Mar 2021 10:00:54 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=d09tCXoDPz/gPvVq2LzHz5z3xcmuD/lr6SC5zub3HT8=; b=rygDn7jEP/jVCCdNu/wZ8/oQvZB9aip92Ajz55aoRRyNGnMB2RcJWDLorpFOHNFJn3 dGh+a8A18TyyWtUQNkPTb9D3pqJiKEuGYaDLuIct10u/4cZdTtFOVoq+wL4xyvWpRmxl M9gWbmq4S1g9ZwNvZNPguBF86lazVLSTGeGLp25S2cLaX3p5R9EqEDQOe3hQ7Tsn9oQ9 0p1HLnuQSo7bq3Yfbhvf0uvWSLLNWASi3c+gR53YtvhsSCgkFOG+yy/DkWNNCwXC3jTA 0y/bwA53xiVQ8msCM8iiZaCR6uz9rbs7/oiNSOABje3D6CChw2ihH3DlEEIHjn7CWAEE wNOg== X-Gm-Message-State: AOAM531NxcQpUAFfgpf/X4CnggYxjq/ImQPVp0VVAYDhu31IzKEZBQkx 4Wt82DqcEjbvj72jIws+Mp9EVXrznfB2gL0OIYo= X-Received: by 2002:a25:3853:: with SMTP id f80mr41403299yba.514.1615312853886; Tue, 09 Mar 2021 10:00:53 -0800 (PST) MIME-Version: 1.0 References: <20210309152354.95309-1-mailhol.vincent@wanadoo.fr> <20210309152354.95309-2-mailhol.vincent@wanadoo.fr> In-Reply-To: <20210309152354.95309-2-mailhol.vincent@wanadoo.fr> From: Vincent MAILHOL Date: Wed, 10 Mar 2021 03:00:43 +0900 Message-ID: Subject: Re: [RFC PATCH 1/1] dql: add dql_set_min_limit() To: Marc Kleine-Budde , linux-can , open list , netdev , Tom Herbert , Eric Dumazet Cc: Peter Zijlstra , Randy Dunlap Content-Type: text/plain; charset="UTF-8" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed. 10 Mar 2021 at 00:23, Vincent Mailhol wrote: > > Add a function to set the dynamic queue limit minimum value. > > This function is to be used by network drivers which are able to > prove, at least through empirical tests, that they reach better > performances with a specific predefined dql.min_limit value. > > Signed-off-by: Vincent Mailhol > --- > include/linux/dynamic_queue_limits.h | 3 +++ > lib/dynamic_queue_limits.c | 8 ++++++++ > 2 files changed, 11 insertions(+) > > diff --git a/include/linux/dynamic_queue_limits.h b/include/linux/dynamic_queue_limits.h > index 407c2f281b64..32437f168a35 100644 > --- a/include/linux/dynamic_queue_limits.h > +++ b/include/linux/dynamic_queue_limits.h > @@ -103,6 +103,9 @@ void dql_reset(struct dql *dql); > /* Initialize dql state */ > void dql_init(struct dql *dql, unsigned int hold_time); > > +/* Set the dql minimum limit */ > +void dql_set_min_limit(struct dql *dql, unsigned int min_limit); > + > #endif /* _KERNEL_ */ > > #endif /* _LINUX_DQL_H */ > diff --git a/lib/dynamic_queue_limits.c b/lib/dynamic_queue_limits.c > index fde0aa244148..8b6ad1e0a2e3 100644 > --- a/lib/dynamic_queue_limits.c > +++ b/lib/dynamic_queue_limits.c > @@ -136,3 +136,11 @@ void dql_init(struct dql *dql, unsigned int hold_time) > dql_reset(dql); > } > EXPORT_SYMBOL(dql_init); > + > +void dql_set_min_limit(struct dql *dql, unsigned int min_limit) > +{ > +#ifdef CONFIG_BQL > + dql->min_limit = min_limit; > +#endif Marc pointed some issue on the #ifdef in a separate thread: https://lore.kernel.org/linux-can/20210309153547.q7zspf46k6terxqv@pengutronix.de/ I will come back with a v2 tomorrow. > +} > +EXPORT_SYMBOL(dql_set_min_limit);