From nobody Sat Jun 13 02:57:02 2026 Received: from mail-wm1-f52.google.com (mail-wm1-f52.google.com [209.85.128.52]) (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 BE53D3BD62E for ; Mon, 11 May 2026 09:28:59 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.52 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778491741; cv=none; b=fv6BoPS+QijlqrYVoMHE0KTC3R9eEiWJTtSaiGsphgzWrdgYy/kXnmg3LT36Jame0AFQUzlt+F+oXgbv6NP7IyR5i0tnoCdkhADZvhnPuki5A4oqHI5e3+e+3Ff78uYEVoK0Kpl9IBI5j5Pr2ScfskCVBBwag1JHoDsAtUFrSx8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778491741; c=relaxed/simple; bh=lsDFIcHAftlanfKCuHhcmiZBwiRMAZikzgChqPjJjHI=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=h6pFcO1Pyi9KncU06gEhQtsk32IGweboH22VwE4hqvZfpQJiyrlVwvvWul1LxZpGNjQsUGtlGYL7MprKz/dEoRxCQ0qiWWHaUbRVK7u2N38+Gl5/Y6Z2cXVBpoqmI1/tN18Ph/g98wILslH46Ka6TBZLjh7q6R6t9/F/zmL458g= 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=O/eps76x; arc=none smtp.client-ip=209.85.128.52 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="O/eps76x" Received: by mail-wm1-f52.google.com with SMTP id 5b1f17b1804b1-4891c0620bcso28211345e9.1 for ; Mon, 11 May 2026 02:28:59 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1778491738; x=1779096538; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=YNtvrx6JU0RSTB5C/gMvs38ikePYtzcXdrklgWjxoQE=; b=O/eps76xEqanhoVZDUPzxaSL1NgGjOErbvN5U8eYHw8S5gN2yRJitkOKgbJsSCvfTS 7VvoO+obDujbo18AxwKmCZjAvZC9IW2rGyhDl+oakRwm7SSCogfmyx9hi5pQj3qUTFgx VrtsUvX/V4+33dp8llkv4rM9UuzJ+i+4Fm56bsMNusvPC6S5cMdt9yLcVHkMnWXZ+OJE 4n7mbkyjLyvGjjEpx7gP5HDMyNmmWKkStEcpKXPAytKJdrk5WCOkb+9m28Fp0JgG6bGE iqZ7DO3hXN+JW1nWxr70pXiMJ6BI3kU6Y54ykv0pE5o9mMIGKUXQCdtmJtq7OkFQpu6M EQNQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1778491738; x=1779096538; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=YNtvrx6JU0RSTB5C/gMvs38ikePYtzcXdrklgWjxoQE=; b=EgDmIoXiHR0UZONuzEtqwNqaDbdszkrtN3WejbTtbP1C3nVBCMBiNWBYgE65NhkvnY WjQhHL06CniPjplUEnUY2wHZFduM9VHfotGkUyewOkf5i6SZG9Vw09i50ojUpXcKNELg y5MwgHl4WZ2l9pXYlesYcV5933bWiVOQphYlAsGssUSmDr9/UlNEAFoROW7zZejI3nah X9dwEFseMTYjnAgAvyyXEYChK4zmRr18CGr+0S1sMhKW1OjaJSd0VJpntyB/px76XNdm of8I2J/hmsNnQdXWGDUavUX5VAoSwcW1mZFzt5OsQ8V5xn6S4N4hYEwj6dzLcuPYd5iz TCsA== X-Gm-Message-State: AOJu0Yw8faLVfk6O9KrGHivkyNrjd+o9s4Q1XAUo3z6jyysD86YYPUrY QM4RcZJqKhN9TRMSZFnb60g0fdKe0PXnbHnN1Duc6i+13WqOgKNmlmywYof2qxbkpnLx5KVMfsl HqWmkQWw= X-Gm-Gg: Acq92OHvu0VYkhmHeQHkai9ljhdEYdoqajLbl1pGeyGsms+csYkYqxWUA7CFTwxa8MP L8gMi1kOXlJ3gzKVpoBr4YSVnRZ0ykX7lQq5LcT2Z4nA7uSdl8q2uLz1jPqMi/iNLhMzyn46v4M v21ODWCV25dX3D+DvBB2zGBe5qTHAcEJPgP/zEfqbRg4VOFPEC5y1IJJZfMxuOBUmbXzxgyq+Na 7vBYXnf5kBosQTT3pVMD4INp/fu25HrtZ4PLlF5H8iJJTBRFaTzgKHsTI+J3TU9X/aRQLO5r+sl l4dzJR4q3Dwc37Qixhr0RxPnv8kd1c5wsJ19SDvox4KMXpXEtw1YZO0bpIsG9x4lVmn4nFFPqUX F8Fx1gVSxXjAORHTzeYIjobi3oGWgeUtcgaSTOMmUByGpO14j1lVze55ZbzaS7Bbdykt1ZPOHHz Dtz57vgUD6HDUB7ycfIOUYQw2xIfEswSeaOhVDM7AlCQSlkPY= X-Received: by 2002:a05:600c:8908:b0:48e:6275:27ec with SMTP id 5b1f17b1804b1-48e676b6393mr138132725e9.24.1778491737984; Mon, 11 May 2026 02:28:57 -0700 (PDT) Received: from localhost.localdomain ([2a00:6d43:105:c401:e307:1a37:2e76:ce91]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-48e701e89fbsm157606675e9.4.2026.05.11.02.28.57 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 11 May 2026 02:28:57 -0700 (PDT) From: Marco Crivellari To: linux-kernel@vger.kernel.org, netdev@vger.kernel.org Cc: Tejun Heo , Lai Jiangshan , Frederic Weisbecker , Sebastian Andrzej Siewior , Marco Crivellari , Michal Hocko , Andrew Lunn , "David S . Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Haren Myneni , Rick Lindsley , Nick Child , Madhavan Srinivasan , Michael Ellerman , Nicholas Piggin , "Christophe Leroy (CS GROUP)" , linuxppc-dev@lists.ozlabs.org Subject: [RFC PATCH net-next 1/5] ibmvnic: Move long delayed work on system_dfl_long_wq Date: Mon, 11 May 2026 11:28:36 +0200 Message-ID: <20260511092846.120141-2-marco.crivellari@suse.com> X-Mailer: git-send-email 2.54.0 In-Reply-To: <20260511092846.120141-1-marco.crivellari@suse.com> References: <20260511092846.120141-1-marco.crivellari@suse.com> 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. Cc: Haren Myneni Cc: Rick Lindsley Cc: Nick Child Cc: Madhavan Srinivasan Cc: Michael Ellerman Cc: Nicholas Piggin Cc: Christophe Leroy (CS GROUP) Cc: linuxppc-dev@lists.ozlabs.org Signed-off-by: Marco Crivellari --- drivers/net/ethernet/ibm/ibmvnic.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/net/ethernet/ibm/ibmvnic.c b/drivers/net/ethernet/ibm/= ibmvnic.c index 5a510eed335e..a1c01c9820d2 100644 --- a/drivers/net/ethernet/ibm/ibmvnic.c +++ b/drivers/net/ethernet/ibm/ibmvnic.c @@ -3229,7 +3229,7 @@ static void __ibmvnic_reset(struct work_struct *work) if (adapter->state =3D=3D VNIC_PROBING && !wait_for_completion_timeout(&adapter->probe_done, timeout)) { dev_err(dev, "Reset thread timed out on probe"); - queue_delayed_work(system_long_wq, + queue_delayed_work(system_dfl_long_wq, &adapter->ibmvnic_delayed_reset, IBMVNIC_RESET_DELAY); return; @@ -3267,7 +3267,7 @@ static void __ibmvnic_reset(struct work_struct *work) spin_lock(&adapter->rwi_lock); if (!list_empty(&adapter->rwi_list)) { if (test_and_set_bit_lock(0, &adapter->resetting)) { - queue_delayed_work(system_long_wq, + queue_delayed_work(system_dfl_long_wq, &adapter->ibmvnic_delayed_reset, IBMVNIC_RESET_DELAY); } else { --=20 2.54.0 From nobody Sat Jun 13 02:57:02 2026 Received: from mail-wm1-f50.google.com (mail-wm1-f50.google.com [209.85.128.50]) (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 C0F273BE17C for ; Mon, 11 May 2026 09:29:00 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.50 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778491742; cv=none; b=FrMuFLUwe2X1zLn3GugwnStlYvoJbbcjLois+nUJ/ocX0lULp4us9SDUkOERe/A7AEL/QbDuzqqF/FI0ILEL0drEsROFxEBltDG2U7KpihYgYAVRIuvDIADCVXlMz66NZN9qE1rgV4OCkw6dsDRlW/yTJNc6HZRC9nZfGSVVlas= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778491742; c=relaxed/simple; bh=63ifupjXbAjohqyy4A1IJNKn3JmWa27I29vcvR905Kw=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=KaIzEXQ75R7SBBzcAGu6HoWqs0BB/bUlEhj2f/ATWmY4sHRplDxuvtuIiAt3M8QkaTk8P3Py7pW+gWPL2JpIfMgqvrktB638gRsRl9JASzEgUphusbqHrigM1gr/f8cluSAOps3THLpqbSaFF6Gg1xQiAkSoxZ62gHQlCsYwLBk= 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=BCtBLc9c; arc=none smtp.client-ip=209.85.128.50 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="BCtBLc9c" Received: by mail-wm1-f50.google.com with SMTP id 5b1f17b1804b1-48e56c1bf5dso24562185e9.3 for ; Mon, 11 May 2026 02:29:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1778491739; x=1779096539; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=iZyfAFR2B0cKhvW2WvNxW2hQKKC9f/zud3fwLb2p1xU=; b=BCtBLc9cBOJ8UKei2M/q7vkk7FXUxMqFgDIfNDSq1qTWlx87tArPJtseoQN0vPzZTj v/YSPTCwZgqZkk33JytIcIdBg/+ljCnTGCkUE2qx3S5ZlAKySSodTFkK+1GMRS7RoOmI 9whJG2OE5/3ZoqFORcES4WP3av3ToJ3lTfVwAasJ/YxOwbS1m3Y5e2a1u78EYyaGgijd uwPmGwFP3urhketMOpHDAxWlo4gNII2VfU1IvgeAA+ONKZGhQpVvzsB94le24iL3wlvS FBULTys5ZQNgZyDkfkpqg+Xd6r7F0qLeido+iTHygxPIGPgIAAXOEXihEMOXLUq8oVt8 9n8g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1778491739; x=1779096539; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=iZyfAFR2B0cKhvW2WvNxW2hQKKC9f/zud3fwLb2p1xU=; b=HvH7zHoyL/sWcxQLKt738YwiYc20Na3L9UI9ioIHajNQbLDJDJr1u/iuYHlHsrUDdb iTc2DgIxsrIzVwC4Q+3Dq+m8RZP7cSNtNLodKQlyBtMUN1hfkIChUt12OGmhSQZryqbl Vpp0T8MOI1jJ/CiePB1KOULZbc0o6w2GCJpl6MStNC2OYQPLTmzQjQ/LLf0Pit9Ir8x0 dPqJXOT8Tkn5qxJbZRODBReK+tcoKrK2SkcWJ7aqsIS8waGbnyLVt3Nfe+vj2/xD12F3 Q5aXls9SSKa9HZHDOyvRStfu9LCxGwJlksoDHZ2gPp85DZKo25hb0sSI64z+/bYCe6AS VN8Q== X-Gm-Message-State: AOJu0Yz/DfBC4b1wg7UCgMzE2mMGJ50j/BCuV6QMabMD2b6HUyLc90Cr uLdwe5xpa+gCU0YL7rFyNTHgcL9nWbV4cbRol7kABA70Xdi88Y91An6uj7Z+LdMtm88sDTsxg21 9PwZb+0Q= X-Gm-Gg: Acq92OGwGrZLg5TkcpZippXQk5YgMtulf1SXkSIpHlAy1khmmMBJFOZrDSpZ1ncrMT8 UMH1Udvf4ADV1Xs1DrKCMOIZnRMMT3eVXLMgxro7u+IKBYjo/ONt7fukpUy7EFo2Sm9MSYTA6OY AUK5iJLXJ+gaq/HZbZrz0XPEjObpE1yiVIK47LdL/Pr1B8BF/EJq3/6dR9qmOb0QrNLdI4Snzy0 AWXxDVJEr0W/bLQr68GG3hhdSGlJ+vL3pzRMe7p+vLvgUxC4fdUySAK73Y1HSmsZmpEVkJV80lS ZoP9qahbEj/gsf57fXRQb2SppEFfKccwAsEeDvXg2tF8GK5h4v8LtYXkXq2EQ5UieqkCUmPRxxA FC61Y5pO7nwzoSSM0yCGLYG7w9nKay/TEhtLUgNxHvN83XazCMtaJGCUUY1wDoJM2/qDspAkHZA 0ibaeH3l3QKjQ+GyJGEY1vzXz/e5a/OCPdH7Cl1PAbeXfp1cbyilq8g/O9iA== X-Received: by 2002:a05:600c:4695:b0:48a:76a3:2b9b with SMTP id 5b1f17b1804b1-48e706b26fdmr135960625e9.17.1778491738974; Mon, 11 May 2026 02:28:58 -0700 (PDT) Received: from localhost.localdomain ([2a00:6d43:105:c401:e307:1a37:2e76:ce91]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-48e701e89fbsm157606675e9.4.2026.05.11.02.28.58 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 11 May 2026 02:28:58 -0700 (PDT) From: Marco Crivellari To: linux-kernel@vger.kernel.org, netdev@vger.kernel.org Cc: Tejun Heo , Lai Jiangshan , Frederic Weisbecker , Sebastian Andrzej Siewior , Marco Crivellari , Michal Hocko , Andrew Lunn , "David S . Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , MD Danish Anwar , Roger Quadros , linux-arm-kernel@lists.infradead.org Subject: [RFC PATCH net-next 2/5] net: ti: icssg-stats: Move long delayed work on system_dfl_long_wq Date: Mon, 11 May 2026 11:28:37 +0200 Message-ID: <20260511092846.120141-3-marco.crivellari@suse.com> X-Mailer: git-send-email 2.54.0 In-Reply-To: <20260511092846.120141-1-marco.crivellari@suse.com> References: <20260511092846.120141-1-marco.crivellari@suse.com> 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. Cc: MD Danish Anwar Cc: Roger Quadros Cc: linux-arm-kernel@lists.infradead.org Signed-off-by: Marco Crivellari Reviewed-by: Richard Cheng --- drivers/net/ethernet/ti/icssg/icssg_stats.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/net/ethernet/ti/icssg/icssg_stats.c b/drivers/net/ethe= rnet/ti/icssg/icssg_stats.c index 7159baa0155c..7d6d6692d819 100644 --- a/drivers/net/ethernet/ti/icssg/icssg_stats.c +++ b/drivers/net/ethernet/ti/icssg/icssg_stats.c @@ -69,7 +69,7 @@ void icssg_stats_work_handler(struct work_struct *work) stats_work.work); emac_update_hardware_stats(emac); =20 - queue_delayed_work(system_long_wq, &emac->stats_work, + queue_delayed_work(system_dfl_long_wq, &emac->stats_work, msecs_to_jiffies((STATS_TIME_LIMIT_1G_MS * 1000) / emac->speed)); } EXPORT_SYMBOL_GPL(icssg_stats_work_handler); --=20 2.54.0 From nobody Sat Jun 13 02:57:02 2026 Received: from mail-wm1-f43.google.com (mail-wm1-f43.google.com [209.85.128.43]) (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 AC41D3BED69 for ; Mon, 11 May 2026 09:29:01 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.43 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778491743; cv=none; b=iVU1NH8192a9sH6KB4Vo076dSGErjYOHqnQltd6R38o8qFejjpdqIaFqwLZNDNmwIcD+Frb0EWXz4qr6QEZuJgvtKvxCZsS6zAfAkpTVqxRHQq9nsKUUkurtqCubVRTALcIE7Fw9fwsgdkZzOMKBKeuZ4OzLu4W01KOKJ6ryYJ8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778491743; c=relaxed/simple; bh=FUElfcPrwKM1P1C2e4YAuvNqKXojJwDlHLEXWbmd+O0=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=LX9rl0DoM6id45O7N/mtLDiEvz8QYE91pS2mCa3JK9Y2kiSCkSYkauNVOJvpu3UGHJgkvRmkCDAOpLgkEkZKP6V0o1kO4sAdAyiH/6ILQ7amgcDD8bHXLAOfCjnSQwS+fSbY7YAgm6ZbIOyeHh+0Vv6RBLDLb7O5x6bZXBw3gAU= 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=DyDUOSAp; arc=none smtp.client-ip=209.85.128.43 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="DyDUOSAp" Received: by mail-wm1-f43.google.com with SMTP id 5b1f17b1804b1-488a88aeec9so45975485e9.2 for ; Mon, 11 May 2026 02:29:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1778491740; x=1779096540; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=OFnchCOERV/K3rqnNmAlO2sDAoWVt97APGhHAMjqjX8=; b=DyDUOSApwrveoXQsoEHcbmlnHY0X1X2cbUv+04aq6gUh13R741ICk4wwaP7JbWozhP 8DUtE6XJSokSvfVJupia9e0CEu7cWYM/ADD/bQTWbdXnUV+upaH+35eNqZaDTWp305RB 0lvmO2AwInC9AhWXt5NFa3acgQzeYZSBoS6uBgzgBKE4dTtMf3COK10EqJfK1pUWtp3n FYRb8ExDv+9ddQd5DT3hJ64rsVn2OpBiSrrz47vR3RMhAFROAX04LdZHVK1dz4MD93P3 FHCPO7IouwOL7HXmh0drICkb8RWXWIYiTRWlTZrDKx7/URaJBEUqHnMAncQkTGXf52CW 3dew== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1778491740; x=1779096540; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=OFnchCOERV/K3rqnNmAlO2sDAoWVt97APGhHAMjqjX8=; b=Tw9NCHUPWcF7ZBjqBiHF8NmyiFaUPgcmpvFIAo/mtJJr2LgR6674hT+6p6fY2jzmwo HKLzfGWb64O2WoSdw7KIT7lMxWAAk9pvm2fLU2tbQrB5Xl4JexBw3Hyhp4q+969Ytv99 YSl8YLgplMVP9WSzlpuF634aR/bQDkEMviS0BSOc75LGFdMUMOJeWMRv3DbSym31ZrWz dM8q9PS40272BbqVD/ABo5GPkJdY0/y0SHmoBPwt6r3Cq+bN1jmasypp9OCF9zNPZmY8 1rlA1tmP1RGKa7eES7G+W4wPyBhJue4C2lWvoHt1Gog1mDj8+rW4+JgxyvoBtb6v0q1r kWOg== X-Gm-Message-State: AOJu0YwXBbDl7DPAIktS/D5I2uOKz4a/sjDEPiTM6nSrbb59YOG+U/eK 4+vQSmwLCIm8vJ79ts11V7++B5h8iYcESJM6MNUl7I8btYDtriGLlxvpLxxkPw0TIPsS8JDQ0w5 cOazmrK4= X-Gm-Gg: Acq92OFoefaBwupSvlfRT7uDICOozTRUju/w1nplhoXtPLY/iOYps2dFyy2SULgk51l VwLbXliQwkSh/A63GTnbu4Pr+CD3Y8bmK+88Txo43TbZNJKzD03eU9P0x/uO0wrtqpVavsrP2EX SxhaXdBQ0iotPQOscR8l/cfuWu5ZSrEzOvySKDmdxsVUwE2qhyy3/+MhpNnIEauECdk7C1iBakF Jvq85k5xnLuJQEt5hBqWgCay7aWDrCqVx6myGT3miOA5eCuJoezY+LulwDfD+N3kebz2YGtmaDD y6GG9R47gVS/WA19uMcTaLX88pdFeBHDzbCVcmCou1RlljLf310DLLXJqgJExnAC0KwVZxT6305 0RztdTng2614TU6VQVnnntI7xNPaTsT524JCjqAvF04z+ka1X8nX8XU0U0N+/sKr4Y1rzHwj+Bq o3cc796tTjd3UfkfddJ3vPqPVxM4BcjoOx1fKzyZ1U4KR+FY5lVSaKL/Sq3whQfYFJHkix X-Received: by 2002:a05:600c:698d:b0:48a:7676:30bc with SMTP id 5b1f17b1804b1-48e706f11dbmr152723555e9.14.1778491739910; Mon, 11 May 2026 02:28:59 -0700 (PDT) Received: from localhost.localdomain ([2a00:6d43:105:c401:e307:1a37:2e76:ce91]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-48e701e89fbsm157606675e9.4.2026.05.11.02.28.59 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 11 May 2026 02:28:59 -0700 (PDT) From: Marco Crivellari To: linux-kernel@vger.kernel.org, netdev@vger.kernel.org Cc: Tejun Heo , Lai Jiangshan , Frederic Weisbecker , Sebastian Andrzej Siewior , Marco Crivellari , Michal Hocko , Andrew Lunn , "David S . Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Mika Westerberg , Yehezkel Bernat Subject: [RFC PATCH net-next 3/5] net: thunderbolt: Move long delayed work on system_dfl_long_wq Date: Mon, 11 May 2026 11:28:38 +0200 Message-ID: <20260511092846.120141-4-marco.crivellari@suse.com> X-Mailer: git-send-email 2.54.0 In-Reply-To: <20260511092846.120141-1-marco.crivellari@suse.com> References: <20260511092846.120141-1-marco.crivellari@suse.com> 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. Cc: Mika Westerberg Cc: Yehezkel Bernat Signed-off-by: Marco Crivellari Acked-by: Mika Westerberg --- drivers/net/thunderbolt/main.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/drivers/net/thunderbolt/main.c b/drivers/net/thunderbolt/main.c index 7aae5d915a1e..f365ef642b62 100644 --- a/drivers/net/thunderbolt/main.c +++ b/drivers/net/thunderbolt/main.c @@ -315,7 +315,7 @@ static void start_login(struct tbnet *net) net->login_received =3D false; mutex_unlock(&net->connection_lock); =20 - queue_delayed_work(system_long_wq, &net->login_work, + queue_delayed_work(system_dfl_long_wq, &net->login_work, msecs_to_jiffies(1000)); } =20 @@ -464,7 +464,7 @@ static int tbnet_handle_packet(const void *buf, size_t = size, void *data) if (net->login_retries >=3D TBNET_LOGIN_RETRIES || !net->login_sent) { net->login_retries =3D 0; - queue_delayed_work(system_long_wq, + queue_delayed_work(system_dfl_long_wq, &net->login_work, 0); } mutex_unlock(&net->connection_lock); @@ -704,7 +704,8 @@ static void tbnet_login_work(struct work_struct *work) netdev_dbg(net->dev, "sending login request failed, ret=3D%d\n", ret); if (net->login_retries++ < TBNET_LOGIN_RETRIES) { - queue_delayed_work(system_long_wq, &net->login_work, + queue_delayed_work(system_dfl_long_wq, + &net->login_work, delay); } else { netdev_info(net->dev, "ThunderboltIP login timed out\n"); --=20 2.54.0 From nobody Sat Jun 13 02:57:02 2026 Received: from mail-wm1-f48.google.com (mail-wm1-f48.google.com [209.85.128.48]) (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 AE5DA3C0610 for ; Mon, 11 May 2026 09:29:02 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.48 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778491744; cv=none; b=k01x+W0ywf76KTY8mynO27e86Z/wFMUxny+R3UiQrM4/4v5hxRQA3Q0jzixDAhgfLPlrJWyvrerR4sPmrtBr70PS+9hEzhmwPS61shxmywge8ewUxzLGXnvHEmEtO4mgEPyxlJeKuR+Z1vD6TANUKdzhtmTuE8dSsZrvLiXgk7Y= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778491744; c=relaxed/simple; bh=WFctueSO0c8kiOMz97Igcd0GbiVV9wZ/sS8JPym8NT4=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=PU5+KKKABOA3MUFl793RTNTG6L6M2p1Mz9390+3M2rFJqUICpAR7uub9KzTXJzb3Ym/RUJ6et91LUyKJaqgaIDC+LTotDGj2se/wgQbpW/Ko2EKR7cmcJOHbByV+shiiP6GLQUt9re2BbsqW+wyW1btqfZ24/CdNmS0s/Drf568= 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=caFPe0Xu; arc=none smtp.client-ip=209.85.128.48 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="caFPe0Xu" Received: by mail-wm1-f48.google.com with SMTP id 5b1f17b1804b1-4891f625344so38960575e9.0 for ; Mon, 11 May 2026 02:29:02 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1778491741; x=1779096541; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=TTpT11VVpBsvTrfwwuWJXCtXwtjRJjFk6SsZKCsLecw=; b=caFPe0XuGA2SSoIQSE8FYKAKHc1C/WLq6nfsXyMjoG5NpiSNQ8ALcyLcTDe6FoAh/G 3L+L3m8mToGZ8Bv6u4Pg+cRZsBqSf+3haFEOKBp3+jWcWxOy7RbnVxoLYxvQ9pgFxOy7 PcWmBMOXkSZfkPHbDTNWxYa7UjyntWlDlVu2iC53h/0xZM0Xdbud+sdSy2zphk6T+1KW uL8cwvNKDZ1iWUVtOVQx4ozOgt/pfasyiRLQdkzI413QMZH3ZL37I0rOHzQb2zC4j3SP 845tXjfLU2JuSovV8vbqx2K9x3Vdk+RiLJvY/UEut8VNUikAMMaq6M3xIanUEFnxq1as gpng== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1778491741; x=1779096541; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=TTpT11VVpBsvTrfwwuWJXCtXwtjRJjFk6SsZKCsLecw=; b=qYN7fSoGiXpfXsKYqMIay0eSr3sKP5m3nztpGPnqWg2LbBd/GLEShIIZieA8tzaQcd kUzzjYxk6ypjXq2m8wHFGqyu42OzBreVVrkIsBxvHO/dRpxW1MjqVBciRCnVGiA9vBed odIetbzRbHnc9gCjipGBtOK61EmYMhFQtWRqld6fQg2WzblCwIgbJUsblneRUwe+vTCB f7zGSjFVkYc9Hn0rBprxKwq9LCxNA+wi4rAkysLMKfJrO/Juq0Cj7thhByPlyEtGbszR 98oUSODwT8o0MGM0VaL7vYJLNX2y60B9mZzcFQG8dZhM6v1sLCDKRw+e5YiWk+BY4iQd I2HQ== X-Gm-Message-State: AOJu0YzDobjTrLJI5lelGn0P02pUec/GKyma32WPEW1JLiSUCQ4nh8Ts sUUj2RNq6oOUb/6YBTszG79bX9fvhzfIhbXrE0jcL8O3JuP4DIXt3JG21smzBS+S4KqkAW8iMvf 5RhOHSc0= X-Gm-Gg: Acq92OFEl2EIYkPkWgO8FSxbSxTi0QmggtXBK75sJwiXP+B8bNBdBNT61bxuPqCuc13 Lny+TNa5DPedJmgRKosQW+Z7Km+ekrAApCgXhp92+IcpCLD/PZtf+ZJhPZYIH4uB0y6T5bHzvUY Ua5FTfBRc0f/h/zs7sfhzkDyYQRmdvvOwiX3TNkWB8YLYiMSi2zEi/+c7NrgBXbe91EImi6KUJc B8Pg7fLNa4tcoXjtDZMGOieveI07nw9e/Ncwv1UdLNKUc0J9cYxB5ADMc5pfOITj2X1grcgyMua Q6kYEVjbMxCsUbo6AAAI1s4QA58yG4YPiMut16TioUEMGTN2vF3dfYrPZZar9Z5gK0sST+fzfbQ fogP2igV5oe/tmxL5wYFfx1RaqFdw90gI8p/2TlQ4CppEkx9MVSAbz9W+ZiU6ayky4CU/+BQ0n1 206WBC1b39Y75XvtdUTrJrgeqzUnrrtgL5YGF8zX523VZdEZ5i6TlM01274Q== X-Received: by 2002:a05:600c:8710:b0:48a:761:5816 with SMTP id 5b1f17b1804b1-48e6d79b006mr168469675e9.8.1778491740918; Mon, 11 May 2026 02:29:00 -0700 (PDT) Received: from localhost.localdomain ([2a00:6d43:105:c401:e307:1a37:2e76:ce91]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-48e701e89fbsm157606675e9.4.2026.05.11.02.29.00 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 11 May 2026 02:29:00 -0700 (PDT) From: Marco Crivellari To: linux-kernel@vger.kernel.org, netdev@vger.kernel.org Cc: Tejun Heo , Lai Jiangshan , Frederic Weisbecker , Sebastian Andrzej Siewior , Marco Crivellari , Michal Hocko , Andrew Lunn , "David S . Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Petko Manolov , linux-usb@vger.kernel.org Subject: [RFC PATCH net-next 4/5] net: usb: pegasus: Move long delayed work on system_dfl_long_wq Date: Mon, 11 May 2026 11:28:39 +0200 Message-ID: <20260511092846.120141-5-marco.crivellari@suse.com> X-Mailer: git-send-email 2.54.0 In-Reply-To: <20260511092846.120141-1-marco.crivellari@suse.com> References: <20260511092846.120141-1-marco.crivellari@suse.com> 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. Cc: Petko Manolov Cc: linux-usb@vger.kernel.org Signed-off-by: Marco Crivellari --- drivers/net/usb/pegasus.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/drivers/net/usb/pegasus.c b/drivers/net/usb/pegasus.c index db85f40734d7..f26bf54e606c 100644 --- a/drivers/net/usb/pegasus.c +++ b/drivers/net/usb/pegasus.c @@ -1126,8 +1126,9 @@ static void check_carrier(struct work_struct *work) pegasus_t *pegasus =3D container_of(work, pegasus_t, carrier_check.work); set_carrier(pegasus->net); if (!(pegasus->flags & PEGASUS_UNPLUG)) { - queue_delayed_work(system_long_wq, &pegasus->carrier_check, - CARRIER_CHECK_DELAY); + queue_delayed_work(system_dfl_long_wq, + &pegasus->carrier_check, + CARRIER_CHECK_DELAY); } } =20 @@ -1232,7 +1233,7 @@ static int pegasus_probe(struct usb_interface *intf, res =3D register_netdev(net); if (res) goto out3; - queue_delayed_work(system_long_wq, &pegasus->carrier_check, + queue_delayed_work(system_dfl_long_wq, &pegasus->carrier_check, CARRIER_CHECK_DELAY); dev_info(&intf->dev, "%s, %s, %pM\n", net->name, usb_dev_id[dev_index].name, net->dev_addr); @@ -1297,7 +1298,7 @@ static int pegasus_resume(struct usb_interface *intf) pegasus->intr_urb->actual_length =3D 0; intr_callback(pegasus->intr_urb); } - queue_delayed_work(system_long_wq, &pegasus->carrier_check, + queue_delayed_work(system_dfl_long_wq, &pegasus->carrier_check, CARRIER_CHECK_DELAY); return 0; } --=20 2.54.0 From nobody Sat Jun 13 02:57:02 2026 Received: from mail-wm1-f51.google.com (mail-wm1-f51.google.com [209.85.128.51]) (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 9B66F3C276F for ; Mon, 11 May 2026 09:29:03 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.51 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778491745; cv=none; b=V1eCxduSTD/Twddv2WPTNsmJvC8Q1tQ9HihzAwb8mXEXc7MTbbNf45X6b2Vc0kU0P3Der2wv+7wCitKxQc9dg0PHKm8t9TRFdF95vxrnM3M2n2+o+7/oyAMfJ0wPxDSXKO6I0R7OStjbgDSpFhIQpqNBk6MfIyG1SCQ4nErv2WY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778491745; c=relaxed/simple; bh=U1Qm+KKl/AIGh2iSPba1dZ6yy/KwN/3PNFvd/VeLMtM=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version:Content-Type; b=A2pvtFMg1kDuW9Tgpe62y41PhzOh9dCyRd8qLs4uaHIrbMqJ+i3LWCSYO1sgI7e+ognhkNVpJOb/wtCjeYKgkMWM/aOtHHkYAa89ia86hOBeuXHd8PFrLYJ0B40IkjBis4hwaW5My5yQ0LJtlZSsFj1KbmsifdPyy+cFAYxq+jA= 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=f++Qg5V0; arc=none smtp.client-ip=209.85.128.51 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="f++Qg5V0" Received: by mail-wm1-f51.google.com with SMTP id 5b1f17b1804b1-488a9033b2cso37398225e9.2 for ; Mon, 11 May 2026 02:29:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1778491742; x=1779096542; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=WV7rblNQ4jpJXwaDYZZ+KkXDw9KuCi4SHEk0BK4A9w4=; b=f++Qg5V0Wa1M9jxmceTSJGnCMQCwiMTXauhhz3REkASP1M7pHZnUf1lpED40lrVUDz vfbVbY0YIGxYHj1ojW3Mdrn4fJ49BkYjFt4MPyP7R+pwnTl3KXYOUjs/YzHL3gaaJq3D 3WVAEJxUGTFLtGs3ZR8EU3kAMuw7BRJRHptjH+F43AEIXMDj+asejKAYDzOUxScBlHSy RzL3uelkk9oOVx93cK8A1ljtwJv7keIhBwfXpADRgI5earenD4wg4/3CYqSGXxCDGaeh cP90k9zTI86DliGWT+NMSrpLk9RR96ewWLwWqDMsq1XwtJ27PqJSnOzzSD4IfdEMImsC axWw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1778491742; x=1779096542; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=WV7rblNQ4jpJXwaDYZZ+KkXDw9KuCi4SHEk0BK4A9w4=; b=N9duESaXCHO9Rf17vxaqkR2qf6fkdDSL92y1vRFqkFtqi3e7Ke3juuRLDFXyXsKX5e 1DYBsRVcq8te/ewnMZhr7p0iVZiysE2YGaSAgnuZrLrI4bZ05UbUzmPz10hUxh3Io6ZG VtaIMrhELcczMWDmdvXg9lrDq2AK9MP4xBtL1YeHGr8qwAtLC+C6+MX2q+Pa6BiH8Cbw iiCJp4q4j2U5n0r9PKso6o0bva8JdGUvOJcYTQfmAYYak44+sVZf1f7G8ZrwYVH8moZf S16y15DgNyPFK6cSRkFcxL9WiNJIfMx+eRKJcCUdDviFay5YsjWYT3AUN0sNiC0FOloq 5yIQ== X-Gm-Message-State: AOJu0YxG3dSpgEYlIwOkisgp9apsuajdwqusZfgAcD7j8vuXaaFOsEpk 5LIQUsLHheosxy7gSWbq1dLRJ8twgUITg9j5bVV15sb9ipeWXhAL8vAHOSVOnkN2rIUT52PnQSU RNAhbtHc= X-Gm-Gg: Acq92OFRl+tpBLiiArofoiRNTWlbzW9UxwrnRMjkI8dWE8B9nS/JscmCa8J7yiGaylS lYTMH08KDuXI57J9wRyyLsnjw8bQwyWhQdnWLF8SrWjVmj8AHzyRSjEk/TF6tLUb1Tc6Mnz+5zL NvYrmBcx1TllFC+fLl32bb1tRWAZOASHhjyPEFwzlX5z6vqB3pQMOFqRPsm46Cb0yXK7/0SzPV5 ukNn8M8DPWhFq73tNPghvVhtrspPMWleZcpCpnOTtKYaqQYBnJYTqDL9nJO0mkh5c0LnNcGZ+26 cf1OO00wmGG09ugV8fXN8OdjLJd1zxp2vFISyOwXFjFqj5l//4v5Hil5vKiVqjwxv62EVypVley ncdP9qYoEzQKkjrbTcADLRhjxx4EKyCHkzpR4rLXQ4h+H9lZIGPkOEJ3A0k75RbXIO4Gg6fYwRK XqVZYXI4mK9S0CZ4Z+/TM+zR4O/JZO/utcfgipv9HHEqa6E/M= X-Received: by 2002:a05:600c:c11c:b0:488:c078:bfda with SMTP id 5b1f17b1804b1-48e706e0168mr96108715e9.26.1778491741993; Mon, 11 May 2026 02:29:01 -0700 (PDT) Received: from localhost.localdomain ([2a00:6d43:105:c401:e307:1a37:2e76:ce91]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-48e701e89fbsm157606675e9.4.2026.05.11.02.29.01 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 11 May 2026 02:29:01 -0700 (PDT) From: Marco Crivellari To: linux-kernel@vger.kernel.org, netdev@vger.kernel.org Cc: Tejun Heo , Lai Jiangshan , Frederic Weisbecker , Sebastian Andrzej Siewior , Marco Crivellari , Michal Hocko , Andrew Lunn , "David S . Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Ethan Nelson-Moore , linux-usb@vger.kernel.org Subject: [RFC PATCH net-next 5/5] r8152: Move long delayed work on system_dfl_long_wq Date: Mon, 11 May 2026 11:28:40 +0200 Message-ID: <20260511092846.120141-6-marco.crivellari@suse.com> X-Mailer: git-send-email 2.54.0 In-Reply-To: <20260511092846.120141-1-marco.crivellari@suse.com> References: <20260511092846.120141-1-marco.crivellari@suse.com> 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. Cc: Ethan Nelson-Moore Cc: linux-usb@vger.kernel.org Signed-off-by: Marco Crivellari --- drivers/net/usb/r8152.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/drivers/net/usb/r8152.c b/drivers/net/usb/r8152.c index 1ace1d2398c9..16c521e3fe0a 100644 --- a/drivers/net/usb/r8152.c +++ b/drivers/net/usb/r8152.c @@ -7050,7 +7050,8 @@ static void rtl_hw_phy_work_func_t(struct work_struct= *work) =20 /* Delay execution in case request_firmware() is not ready yet. */ - queue_delayed_work(system_long_wq, &tp->hw_phy_work, HZ * 10); + queue_delayed_work(system_dfl_long_wq, &tp->hw_phy_work, + HZ * 10); goto ignore_once; } =20 @@ -8620,7 +8621,7 @@ static int rtl8152_reset_resume(struct usb_interface = *intf) clear_bit(SELECTIVE_SUSPEND, &tp->flags); rtl_reset_ocp_base(tp); tp->rtl_ops.init(tp); - queue_delayed_work(system_long_wq, &tp->hw_phy_work, 0); + queue_delayed_work(system_dfl_long_wq, &tp->hw_phy_work, 0); set_ethernet_addr(tp, true); return rtl8152_resume(intf); } @@ -10001,7 +10002,7 @@ static int rtl8152_probe_once(struct usb_interface = *intf, /* Retry in case request_firmware() is not ready yet. */ tp->rtl_fw.retry =3D true; #endif - queue_delayed_work(system_long_wq, &tp->hw_phy_work, 0); + queue_delayed_work(system_dfl_long_wq, &tp->hw_phy_work, 0); set_ethernet_addr(tp, false); =20 usb_set_intfdata(intf, tp); --=20 2.54.0