From nobody Fri Dec 19 21:51:03 2025 Received: from mail-ej1-f51.google.com (mail-ej1-f51.google.com [209.85.218.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 CAB9130E0D8 for ; Fri, 14 Nov 2025 10:43:38 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.51 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1763117020; cv=none; b=evQbnR7BHkvBJQthlZo9S2W3uTiyzAIHrwzvBP95fHvghDFsmMjmv7cFPlQsskBypD4Kxzv6croCf2uL5OeOOv9rmOV78FidJiUX/KYmSsGSXvkqLjRYUJho5Yf3QXVcNwWr5mmR2ZSbquDhiFibIM9YB91jpjzBrzIi6XZO2B0= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1763117020; c=relaxed/simple; bh=nh1PjSXmB6B5wtOYvpg8YXOYhC88B0dma/uCjVOY03g=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=iYZtMrXRosYVQ3XDVnQJNZh9gPDA12DTj015J93DnMaCEPPYIu6MTSh1HRBrFPWlKPktg1ParAGpuAUY9ogIzhH4v0X4xtxtTuGVMx8Da/q4mzsBPAj9Mlw1l7KrQ3qIwma4r9UhMeLBYyX7r0tMYwcb4hoxWMcn0KjZyRUxK74= 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=B7f75HON; arc=none smtp.client-ip=209.85.218.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="B7f75HON" Received: by mail-ej1-f51.google.com with SMTP id a640c23a62f3a-b472842981fso228321966b.1 for ; Fri, 14 Nov 2025 02:43:38 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1763117017; x=1763721817; 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=5qnf43euh50xAz5oC9jatLweC4/+OTf4gXUuEO+dc9E=; b=B7f75HONJ6VnZW4s2yOYllQVbukKpNLUckRdQABeI6xoEQvr3rLiWvyfvgMa2l+fMQ yfxdZVM3tepPcv/ejP2Zftn6kxrPrwO06WlblqEd7QVWGBHKpgpGCbdDS2rXIUfDPrLP +iclhiUucnUeSYeWWBo50TwXsgXEBfqTlK8iWkmaeTKICTnhYJGEGKF+6k/hkD6qSW1n cqQk9AvNOJWiY/0lXvGPDAlgkOIOlDsYxIPtmcZ4riYGbno9sK8sCrDqtdR5/U2Ni/Wt HuElEdlB8+F1WRTO9ruEMxF7PrlnQaXDvHr3n8+sRsi/UlzgnImur6TDNDcIQjJUEYUH Kh5g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1763117017; x=1763721817; 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=5qnf43euh50xAz5oC9jatLweC4/+OTf4gXUuEO+dc9E=; b=aGOqPGvvzdx51ywavbCsFQLCZhSmkF4nzc7a2QCK5esj1kOAvdLVpMz6BGqgPckKY3 6Gx3h5EXZZcPhXpG5+Ytp21W4zdaRYFPZ7EX1IkvkzYAO7SKRWcezGbO18ZMdO7lxkyE nrFYfyVBsLqGeriJoP0cv7YkAQCrRvO+/V8Px+bmxEr0k61KAdLEc27q3UwvuFyWUvup hyt37OzsEf2+OO0Y9b1QxF5Uko9NiJsXCQTHqxp8MPtH3jqN6/g3MRHpAcGB3LJxdFTX BI6riHFmdZ5GTjXJc0RvYNMVslvh/C1WidUgT2nOiPRZD9vMFKrigA0JcwbQwMNK8dFY 5ovA== X-Gm-Message-State: AOJu0Yx1tkH0k2G1XYsQOWM88qClOFInJqBADN5HhpNy0vkaBWLr8kfT b/oTgPEFHVMq+zL2YSQLSaphojTB6G/QIRNhFcsyklAMAs5BAngbLy80e46Utfc59brwZ/TX2uo 6x+J7 X-Gm-Gg: ASbGncuMVzq9EMfNbSNE3gy/uHWanXdK6oStdZ1LNOujkXVXFZy51k4KD+lJCJdRLQR wXighe6p91ZEda+B4UUHSutax+QbGjTrSFoTc6e9PAvHEUzejIJpNyCbsDLTHdsy8j1LB0GBTFH VYZbNVWGaG7OfadYbgKVVS/Ni8L+O1BkAXnTXcZ0PLtssnlqgLzlh4DzldCujWQndeDJmn5Lzu2 MXfZlx5FgF51/YUb/FgDiNTGMmLo2Fhyv+27pXyymYFyxJs3KTOJ2P6ZQR5VZyDl4iblH215a2Y 226InO9SQgZMPvurz4LBddBUroACUYTsKgI18/pr2KzIWjUz5IunxrbjjrHrajHBAXXB0v10O1r TexaNmGW20bBDcROgOgzsj94A6EElyQHBz3E+Ycv77tTUJf0rBWLuk4GBc+Z9GziCsjAQyROe/L ak1FGOzDazMzobaw== X-Google-Smtp-Source: AGHT+IHMVj7O3E/KnHZI4uDJ5+oTdAiz5D+VVC1LG6ki9E2djSVIrRZEi/GgjbF6gY3JvKH3pseNvg== X-Received: by 2002:a17:907:2d25:b0:b73:4b56:7a37 with SMTP id a640c23a62f3a-b73678eacabmr241701066b.30.1763117016492; Fri, 14 Nov 2025 02:43:36 -0800 (PST) Received: from linux ([2a00:6d43:105:c401:e307:1a37:2e76:ce91]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-b734fad43dfsm360561666b.20.2025.11.14.02.43.35 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 14 Nov 2025 02:43:36 -0800 (PST) From: Marco Crivellari To: linux-kernel@vger.kernel.org, linux-wireless@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-mediatek@lists.infradead.org Cc: Tejun Heo , Lai Jiangshan , Frederic Weisbecker , Sebastian Andrzej Siewior , Marco Crivellari , Michal Hocko , Felix Fietkau , Lorenzo Bianconi , Ryder Lee , Matthias Brugger , AngeloGioacchino Del Regno Subject: [PATCH v2] wifi: mt76: replace use of system_wq with system_percpu_wq Date: Fri, 14 Nov 2025 11:43:25 +0100 Message-ID: <20251114104325.116471-1-marco.crivellari@suse.com> X-Mailer: git-send-email 2.51.1 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Currently if a user enqueue a work item using schedule_delayed_work() the used wq is "system_wq" (per-cpu wq) while queue_delayed_work() use WORK_CPU_UNBOUND (used when a cpu is not specified). The same applies to schedule_work() that is using system_wq and queue_work(), that makes use again of WORK_CPU_UNBOUND. This lack of consistentcy cannot be addressed without refactoring the API. For more details see the Link tag below. This continues the effort to refactor workqueue APIs, which began with the introduction of new workqueues and a new alloc_workqueue flag in: commit 128ea9f6ccfb ("workqueue: Add system_percpu_wq and system_dfl_wq") commit 930c2ea566af ("workqueue: Add new WQ_PERCPU flag") Switch to using system_percpu_wq because system_wq is going away as part of a workqueue restructuring. Suggested-by: Tejun Heo Signed-off-by: Marco Crivellari Link: https://lore.kernel.org/all/20250221112003.1dSuoGyc@linutronix.de/ ---- Changs in v2: - improved commit log - rebased on v6.18-rc5 --- drivers/net/wireless/mediatek/mt76/mt7921/init.c | 2 +- drivers/net/wireless/mediatek/mt76/mt7925/init.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/net/wireless/mediatek/mt76/mt7921/init.c b/drivers/net= /wireless/mediatek/mt76/mt7921/init.c index b9098a7331b1..95764b82da39 100644 --- a/drivers/net/wireless/mediatek/mt76/mt7921/init.c +++ b/drivers/net/wireless/mediatek/mt76/mt7921/init.c @@ -343,7 +343,7 @@ int mt7921_register_device(struct mt792x_dev *dev) dev->mphy.hw->wiphy->available_antennas_rx =3D dev->mphy.chainmask; dev->mphy.hw->wiphy->available_antennas_tx =3D dev->mphy.chainmask; =20 - queue_work(system_wq, &dev->init_work); + queue_work(system_percpu_wq, &dev->init_work); =20 return 0; } diff --git a/drivers/net/wireless/mediatek/mt76/mt7925/init.c b/drivers/net= /wireless/mediatek/mt76/mt7925/init.c index d7d5afe365ed..e33ab4849e8a 100644 --- a/drivers/net/wireless/mediatek/mt76/mt7925/init.c +++ b/drivers/net/wireless/mediatek/mt76/mt7925/init.c @@ -420,7 +420,7 @@ int mt7925_register_device(struct mt792x_dev *dev) dev->mphy.hw->wiphy->available_antennas_rx =3D dev->mphy.chainmask; dev->mphy.hw->wiphy->available_antennas_tx =3D dev->mphy.chainmask; =20 - queue_work(system_wq, &dev->init_work); + queue_work(system_percpu_wq, &dev->init_work); =20 return 0; } --=20 2.51.1