Received: by 2002:a05:6a10:8c0a:0:0:0:0 with SMTP id go10csp2639763pxb; Tue, 9 Mar 2021 07:26:37 -0800 (PST) X-Google-Smtp-Source: ABdhPJySdtvDc3ytbEEY/hMzhsp419cugcgZfEkpfqMs9Bo+Q3cTffD/VC/BgCTndVAllZxskbeb X-Received: by 2002:aa7:db95:: with SMTP id u21mr4714765edt.152.1615303596916; Tue, 09 Mar 2021 07:26:36 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1615303596; cv=none; d=google.com; s=arc-20160816; b=0xd8IaREXd7UHuG8ILjRIP4K3NU1BkWn2UMU0cGkVBb846JXZRHKSop3VtISL/Dmim VrzOdG5JFSUy55aRP8tProbhM6bgWzcF7iWFF9Ufaez3pyDfBxhwlpN0l5pNyI8rWKSw q8dpvKMZRPQnkxyhUNB+JZKEsEM6lhRs5msC6PwRi65sBMV27/Kt6cwX7uJDJjkuOyXu u1xBmd5SERrFe7axrZ0js6tws6j3StVn3UlerjeXRagMOPsXCXBoQY7qpc7SzsYxOnlE Va+nx8zJh4S1nLwPdbEHDdhO8FMvZp+Xw4xBIeCW9HwC77geq2E0SOZY7tXNC4mbrkBl dLsw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from; bh=azcrlWE364YwoYy32j/veyei3kmkqYQqSbugMfYpBdE=; b=xYHzTZki4UPI3lP59QgxKxWlJToJpkrPbhXgUKVAFPJa4MxAyRY+1f0mbhGOHwio0o TSYNQy8/EBzOOXxmQcpJa79pry23jiaG5efILhikmNXCDNXImbDR8ZIyao4pp5he2Lkg GtoEjGEBG5NGMeHztx+Q6Ojo2tjqp93E9ORTPrLmuZ1VdxLWLqlUNwfKKbBl6GPwv96y 1uAwANt3tVowvlphvwzPZdnhso0C7V/MMh3RgjtFdSEQyTbOMBEyGayup+kQXX3PY1p9 a5E1PIa9OiMlSYywfBkhBnImCRE9SPIbvhMC5cjfsGIH1s8v8i2vjpf155z1ayjMlI9H ob8Q== 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 ss21si9489676ejb.338.2021.03.09.07.26.13; Tue, 09 Mar 2021 07:26:36 -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 S231915AbhCIPYv (ORCPT + 99 others); Tue, 9 Mar 2021 10:24:51 -0500 Received: from smtp02.smtpout.orange.fr ([80.12.242.124]:38234 "EHLO smtp.smtpout.orange.fr" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231717AbhCIPYs (ORCPT ); Tue, 9 Mar 2021 10:24:48 -0500 Received: from localhost.localdomain ([153.202.107.157]) by mwinf5d20 with ME id eFQD2400T3PnFJp03FQjo9; Tue, 09 Mar 2021 16:24:47 +0100 X-ME-Helo: localhost.localdomain X-ME-Auth: bWFpbGhvbC52aW5jZW50QHdhbmFkb28uZnI= X-ME-Date: Tue, 09 Mar 2021 16:24:47 +0100 X-ME-IP: 153.202.107.157 From: Vincent Mailhol To: Marc Kleine-Budde , linux-can@vger.kernel.org, linux-kernel@vger.kernel.org, netdev@vger.kernel.org, Tom Herbert , Eric Dumazet Cc: Peter Zijlstra , Randy Dunlap , Vincent Mailhol Subject: [RFC PATCH 1/1] dql: add dql_set_min_limit() Date: Wed, 10 Mar 2021 00:23:54 +0900 Message-Id: <20210309152354.95309-2-mailhol.vincent@wanadoo.fr> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20210309152354.95309-1-mailhol.vincent@wanadoo.fr> References: <20210309152354.95309-1-mailhol.vincent@wanadoo.fr> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 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 +} +EXPORT_SYMBOL(dql_set_min_limit); -- 2.26.2