From nobody Sat Jun 13 13:34:48 2026 Received: from mail-ej1-f46.google.com (mail-ej1-f46.google.com [209.85.218.46]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 3D7BD368977 for ; Thu, 7 May 2026 13:01:31 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.46 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778158892; cv=none; b=UlYIK/qzKcrKlOWkMmAER0RCjWeDdVxVT8IktEyIJJWEhWacwQPG0mVPUHlzphjHLysSP6NPpY9Wxh8oLVPy4lK3Ij3jdTH15JX4qhGixFAIuwo3UgYYKMv3e4RAevl5857QHwHKvdB9UwE8zp/BX7DotbYXqKbZUd1/w9Lh69o= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778158892; c=relaxed/simple; bh=UTbyedDRTeUVV1pdrTTRSss/23YRKWL9BXtSBu7D7xw=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version:Content-Type; b=aYVVtli4TBnh1qlQ3xK0JEMXWH3XFbIbGiUsdfYEpUV3Gz65ZKAkFfYBcRGv9ufiaU/aDMi1rUrUQxg4jE9nQMvlMsdYe+htfg+Awf3eoL79N3QL/gjLVKRXbI3ygpjdn+Z/rmVG8Zo6xtzBHZ+WNz1Z/WuHKzzzjoJ7MIdLr5A= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com; spf=pass smtp.mailfrom=suse.com; dkim=pass (2048-bit key) header.d=suse.com header.i=@suse.com header.b=a6m3YLsJ; arc=none smtp.client-ip=209.85.218.46 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=suse.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=suse.com header.i=@suse.com header.b="a6m3YLsJ" Received: by mail-ej1-f46.google.com with SMTP id a640c23a62f3a-bc66ad3742fso139496666b.1 for ; Thu, 07 May 2026 06:01:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1778158889; x=1778763689; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=zKh6RuNwI3PSAF3V5smXaq0tngEj6fdP/FsqX2SYb5o=; b=a6m3YLsJjdxCWHX3Ki7d8glV3hRZQWTA7eTekZojK133TGn8INupmrv+t6/VNIMea2 p3DfmgtDVKZae5Xibjxl6eUstniZSzSSQThsNr5STVQRzLcZnI3OHVDOZ27+4wwDXUb4 hImTUZJ3vcP9tAXOuy9tBMN7i2L8Klo2SUoTGU01imhiSok1ubkcrjTXLz+bCX2Hppbi /2m+O71H0ZnjVUtmRwybjzfNadEfhu/Lm+oF394f4M6arf+WKmz9FLwc7VbdeeD2fkVa BXUI5iSaGzy5UzEi5zgFrlXi0COEo1b7OsMVE/z3j41isKBogYVY3M54LDAtzO5+SSun LXwQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1778158889; x=1778763689; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=zKh6RuNwI3PSAF3V5smXaq0tngEj6fdP/FsqX2SYb5o=; b=XdJuIJApPsHW7QyrLTgwqtdLlL/yfmV/qyZjZsHiHpbfx9rnB571kZRs1bCKtYrc9Q FLdP8UbqTes7jAtI4qAUvpQ2PDb1daAhjGOpdssQ4XMXHxnZFHtECgD5XzDJCfMzc6fs QyD0CCS0bgyMreMl80CXLi9X/oRjPnBlG1bbXyNKlSE8Mn+oqGYULLecilybRT7yT9lQ Zz1KNxFNIcwhMq8DObzvlqzNjOOIPuLi6Ng5/bsof5nHI1aVR8wayHw2b/ODFhXB9fDU 5912N7BdmaDtRE8+kjTllhjyCShBJjMVfA4H+OXFwWJB8flmVRfxnWqp5r63SxgKmqVj ZZ0Q== X-Gm-Message-State: AOJu0Yx6mk2lCS6FO0obp9BhqucqA6MkNBzULwBKoZVYH/ayckTmAjo5 HV8pC3lVq2RQjCyrVTlAe5Zc30YHq8RLrPfNvVVsHqrVLg2KWPU5gK2AdIyPDju1rjcZjAOwUfC 5L9zaCuQ= X-Gm-Gg: AeBDieuaP4gf2YBgV9ej17e7T6E7FWbntWZMH3pucM34we7IhCy47fBvzngAklfqhkw 5pZB8vGVY4OA3GUNuPmbpZWNYu8zUMGqek4ulsGXpHq4fyXi5dvJpD6ZcLtiRhGNs4AZ36JlCnG 9m4E6AozgCU6uJoDWatKtSRgI+ADfQgwPgVZtQOug9Hsqv/8u+2Ki8wHybTyZsx9pA5VLEl4NaW GMV35rC9K3bv8NGfm9IiVVroecb6ihmuspX/RPzGAudPdKFGg/zpiOpP5u+jDLPUvH0ucxALwvB YRpU4SJf2w7KRPy2ZustL+C0CKRJ2BqzLZYEOBn0GB/hvTobN6gPXzTYGzNptMn7vYHWv7z7wGY E++Ln6h56xF0qRc6jq2+VwEZQCu4YJF74OVYe3X6ktZhLDxWkPW0At6C84hMKg9V5bvw/28P8OW soXmRvt0hLSJtSVy4DNf0uF7z497+e8C8PSl3cVjGAuqXSzkSGyuOyZ7yvDVsvzfSWXDA9 X-Received: by 2002:a17:906:6296:b0:bc6:5f97:8f90 with SMTP id a640c23a62f3a-bc65f979012mr319165266b.3.1778158888881; Thu, 07 May 2026 06:01:28 -0700 (PDT) Received: from localhost.localdomain ([2a00:6d43:105:c401:e307:1a37:2e76:ce91]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-45052483166sm19303795f8f.7.2026.05.07.06.01.27 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 07 May 2026 06:01:28 -0700 (PDT) From: Marco Crivellari To: linux-kernel@vger.kernel.org, linux-nfs@vger.kernel.org, netdev@vger.kernel.org Cc: Tejun Heo , Lai Jiangshan , Frederic Weisbecker , Sebastian Andrzej Siewior , Marco Crivellari , Michal Hocko , Trond Myklebust , Anna Schumaker , Chuck Lever , Jeff Layton , NeilBrown , Olga Kornievskaia , Dai Ngo , Tom Talpey , "David S . Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Simon Horman Subject: [PATCH v2] xprtrdma: Move long delayed work on system_dfl_long_wq Date: Thu, 7 May 2026 15:01:17 +0200 Message-ID: <20260507130117.252825-1-marco.crivellari@suse.com> X-Mailer: git-send-email 2.53.0 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Currently the code enqueue work items using {queue|mod}_delayed_work(), using system_long_wq. This workqueue should be used when long works are expected and it is a per-cpu workqueue. The function(s) end up calling __queue_delayed_work(), which set a global timer that could fire anywhere, enqueuing the work where the timer fired. Unbound works could benefit from scheduler task placement, to optimize performance and power consumption. Long work shouldn't stick to a single CPU. Recently, a new unbound workqueue specific for long running work has been added: =C2=A0=C2=A0=C2=A0=C2=A0c116737e972e ("workqueue: Add system_dfl_long_wq fo= r long unbound works") Since the workqueue work doesn't rely on per-cpu variables, there is no obvious reason that justify the use of a per-cpu workqueue. So change system_long_wq with system_dfl_long_wq so that the work may benefit from scheduler task placement. Signed-off-by: Marco Crivellari Reviewed-by: Chuck Lever --- Changes in v2: - Commit log improvements - Rebase on v7.1-rc2 Link to v1: https://lore.kernel.org/all/20260430085412.96961-1-marco.crivel= lari@suse.com/ net/sunrpc/xprtrdma/transport.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/net/sunrpc/xprtrdma/transport.c b/net/sunrpc/xprtrdma/transpor= t.c index 61706df5e485..1a54993f7ffb 100644 --- a/net/sunrpc/xprtrdma/transport.c +++ b/net/sunrpc/xprtrdma/transport.c @@ -484,7 +484,8 @@ xprt_rdma_connect(struct rpc_xprt *xprt, struct rpc_tas= k *task) xprt_reconnect_backoff(xprt, RPCRDMA_INIT_REEST_TO); } trace_xprtrdma_op_connect(r_xprt, delay); - queue_delayed_work(system_long_wq, &r_xprt->rx_connect_worker, delay); + queue_delayed_work(system_dfl_long_wq, &r_xprt->rx_connect_worker, + delay); } =20 /** --=20 2.53.0