From nobody Tue Dec 2 01:48:40 2025 Received: from mail-pj1-f52.google.com (mail-pj1-f52.google.com [209.85.216.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 D76BA2BFC73 for ; Fri, 21 Nov 2025 14:53:36 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.216.52 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1763736819; cv=none; b=uqnSrEwPCqPQj1inp++0GgwvWXegRgGl0hHc6JejLkbMti+EKlVE/DRXeqEMESuev2cjKB0z3IP/YA2ppZz7RgZCrEefUy3RmW7h6/Ft0biKWsjYQRpA6IP6Gu2MMewXbMKK/hTkJiqSmzuSNlshsfdCv5REhcfE676UmegTsLE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1763736819; c=relaxed/simple; bh=ce3gPsKvy0mX0LtEhRY1aHsxfcRX9tj04hL9siQgck0=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=X3Jgeduip7LXUvY59B67WErBCSqjRwxuyJuIu5rL/rXmKIewauQyIJca7yEhuX75wKsQ5yIduHr31YEZAzmhWfnAgMgYdMUvlebk1bhZG3xCyqXbUnOyblN5RKpHJeK4O0N+aBQ/l9XkxxdFMxAWYbL10kRTDBMb2UrE2niy6kE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=m23mOoGc; arc=none smtp.client-ip=209.85.216.52 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="m23mOoGc" Received: by mail-pj1-f52.google.com with SMTP id 98e67ed59e1d1-3436a97f092so2579333a91.3 for ; Fri, 21 Nov 2025 06:53:36 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1763736815; x=1764341615; 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=2DcFk8ItUkceG01mzjMMcYxL/epZi+IR73cveIeK4b0=; b=m23mOoGcduz7CpNa57CkS750yN7DNO0S1s1Ks4RG1WZOVhJxfokI1QDXvPp6M7btmV UU0/H2KP7A4+psajY5kRnyVAYU+8NNV5r/HITqYLum+h03pXtdWHg7QTEXfkwKiVQipf 5045CcsVvDNVEo4grqEYgcZMUVEyc+RvHrIvBJuMLlznJ/Va3nIM8AXFJYQbARav3672 ViUm4E1W+99leJnaK+IBwvHka/SHAktlg/XtGoZpw6FDtdqkerMPpYX4+AUJrMv0Q0sg mERI8V1ZFVEELKbY9a3K0hZkwshZ4FolibZ6udLleiBrBh1i2UrTfxh0RSybjYdRYmYB 7k/A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1763736815; x=1764341615; 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=2DcFk8ItUkceG01mzjMMcYxL/epZi+IR73cveIeK4b0=; b=S3rAsNlP/q1/5W7Q+JGowLc/O73g25jvapEWrJSQ65rKW/tpGI3mY6HeaTr0Lm2IJY 8auQZTOE2/5nAbkdS5jD3ROL23UTI1BMGBCK3S5MhEGK8pAVo48zO9FH96+TkCfFvInR YgPxhLnnmCw0gCVyf8C49qO32NEc+TqWeli97aTz4AUf6rlMP+yrO36Xc2/SmZLd0G+x zvk5Kr4fVr6Ywfaczt4WJBwZ2ph+mQ2KoOj+2uc+DOtk3MZt1pfhKu86HSnRmlvexfXA 5Ejy2k3ieIy66PH+OkZ4VLWrJoytgKHEVUZPowZiOyIddAdaZeLWoW/cYqvkEYT8dsfk LB+g== X-Gm-Message-State: AOJu0Yzy1CWto17hlouL0aJgzDyzg1AoQg2PdhxmAO67ziOxrbowtRws gl9KfJDrNwBIHjCldb0KRkmIFrkYldP87tO/JWeh0mVK9kT4ZVnmK03lV0AZ96mp X-Gm-Gg: ASbGncttFVB9zhm2dWCZzIc8T0MLqCaXyObCGOYZBKiFgbf2Yfe5xn6TK5eA7+Wnv74 AYyvq2w0zpbcck//dr+X3Dv5pYzox1Gb2RGZ99O9ktWDQfoB31BS7XDka5H4P5Ai/8yDv3bHEi0 +2avamMkkYoqtFKlfCsqov9H4B++jf/hRlM/lBfMRnv3FmmCY+SF2duWztYgXHYHJ4Ve4J1Kpc4 +gSa2CPFyx1+GqzPzwYgP1GbJyMjwzCGYuINkx12MaetNr+CCHhjeonLxnkV3yZYNxyCL2RlZd+ ifV7eUZODwWx/kKs8VspY15DgJqGg/Ll7fbfj78sTxNOb3PIeB+SWZCXynAmtZwITxIveHuy7M4 W69RvjhJYGOvAOEG5F+EggEpcHCr+y4Lv2MpaxmoSbgvHMsitEm6YlfiDjs5gUAQMsccBrp340k 5R0i9log5Tx9zYwZ9HGaOlGA== X-Google-Smtp-Source: AGHT+IFEP0pAxCEZ1nmiYT+OREY1eaH0pgAJTj+Ugh+GQ5qaK04ydI+Jf5KBSn3nLZUhL/ICJ+MVQg== X-Received: by 2002:a17:90b:4a:b0:340:dd2c:a3f5 with SMTP id 98e67ed59e1d1-34733e55f59mr2727432a91.3.1763736814650; Fri, 21 Nov 2025 06:53:34 -0800 (PST) Received: from localhost ([240b:4000:bb:1700:7b36:494d:5625:5a1]) by smtp.gmail.com with ESMTPSA id 41be03b00d2f7-bd75e8b37f1sm5895864a12.14.2025.11.21.06.53.33 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Fri, 21 Nov 2025 06:53:34 -0800 (PST) From: Lai Jiangshan To: linux-kernel@vger.kernel.org Cc: Tejun Heo , ying chen , Lai Jiangshan , Lai Jiangshan Subject: [PATCH V3 2/7] workqueue: Only assign rescuer work when really needed Date: Fri, 21 Nov 2025 22:57:15 +0800 Message-Id: <20251121145720.342467-3-jiangshanlai@gmail.com> X-Mailer: git-send-email 2.19.1.6.gb485710b In-Reply-To: <20251121145720.342467-1-jiangshanlai@gmail.com> References: <20251121145720.342467-1-jiangshanlai@gmail.com> 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" From: Lai Jiangshan If the pwq does not need rescue (normal workers have been created or become available), the rescuer can immediately move on to other stalled pwqs. Signed-off-by: Lai Jiangshan --- kernel/workqueue.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/kernel/workqueue.c b/kernel/workqueue.c index c60584a39fc9..932581d93edb 100644 --- a/kernel/workqueue.c +++ b/kernel/workqueue.c @@ -3444,6 +3444,10 @@ static bool assign_rescuer_work(struct pool_workqueu= e *pwq, struct worker *rescu struct worker_pool *pool =3D pwq->pool; struct work_struct *work, *n; =20 + /* need rescue? */ + if (!pwq->nr_active || !need_to_create_worker(pool)) + return false; + /* * Slurp in all works issued via this workqueue and * process'em. --=20 2.19.1.6.gb485710b