Received: by 2002:a05:7412:d8a:b0:e2:908c:2ebd with SMTP id b10csp656362rdg; Wed, 11 Oct 2023 01:28:32 -0700 (PDT) X-Google-Smtp-Source: AGHT+IFFv+BVQvVu/oirfAOuJri7L6z9M7SPJA5SzAg6oaUjk7sCa9JRid0l9daEv6zIDbXkbXTf X-Received: by 2002:a17:903:244a:b0:1c2:1068:1f4f with SMTP id l10-20020a170903244a00b001c210681f4fmr24363347pls.17.1697012912035; Wed, 11 Oct 2023 01:28:32 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1697012912; cv=none; d=google.com; s=arc-20160816; b=eyPQkt7JIqNEMQlJMKSIfUVYIxOJ5ZL8bZFglCfaxCjbJ4gzJXH50Uyq+sAt7IEKgl oe2vp5Xo90iyEuKV32ut6hQ71JapmqddB9tFCmD8eiBgCM+Sy05EN5HZn0zmbpZVXE8r erXmseaPK/gWRV2B1Q68vrUZskcjMLhGAAEqVSBMi9CkTatjivFKQjPBnCl+CMvwiWJp 5ntejWGTMJiZYmUq5TZhdADN6VlnVv6yn7J9uhPLO4/37Bk7+AJcKX+pP8tLSCAIWSMP ZoRXUT4GwKnno/QRM9Tt20ieXOKuH5JXQ2fuufdd6zH+npnEwxZ/vVz7JF9ede0B708v M22Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:message-id:date:subject:cc:to:from :dkim-signature; bh=Wzwy8dVzFkqBpnclcii55xn3E3Sc8bsV1BMoAlSfZ1w=; fh=+bL2dkdQ8oVDdD7dvY8kgaesUNzO+jeS08PXPMbpZPQ=; b=cdSFbHhMW7WYhBubTUEnXqfm2MqFt9TsV8uoSo4piPIVLrGcACyOHwyvm221F4UNQ/ Le7E1FW3T/Uqulj4F/djNtpvGLQkcrDeN0K2wnB9G8SCa82ScaHQ0MdCUVWLZ+2qMHod b7+gA+XLVOSvTGtM1xlpaqOXXAwFzy/PstW0Mbu7qrYRzngBv+phcgJt1fI57wlkKFlE sldR8AE6rvc0VGeuFXly947YQAtvSG4L5VT9llAsX7zWrptNyXM5Na45tCy0GVIuSWEv C4xZ4BoUI9Z/NNy0kPhKrSTHOvf22dGynuAqKW0XjflQ/yttBNqdKKBhYjov3e9dqDeL 9x7Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20230601 header.b=OGSDDFr9; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:5 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from groat.vger.email (groat.vger.email. [2620:137:e000::3:5]) by mx.google.com with ESMTPS id jz6-20020a170903430600b001c5f15d24ffsi13081790plb.116.2023.10.11.01.28.31 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 11 Oct 2023 01:28:32 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:5 as permitted sender) client-ip=2620:137:e000::3:5; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20230601 header.b=OGSDDFr9; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:5 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by groat.vger.email (Postfix) with ESMTP id D302280DFA4C; Wed, 11 Oct 2023 01:28:29 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at groat.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1344853AbjJKI2K (ORCPT + 99 others); Wed, 11 Oct 2023 04:28:10 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:51738 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230341AbjJKI2I (ORCPT ); Wed, 11 Oct 2023 04:28:08 -0400 Received: from mail-oi1-x232.google.com (mail-oi1-x232.google.com [IPv6:2607:f8b0:4864:20::232]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 70DD398 for ; Wed, 11 Oct 2023 01:28:07 -0700 (PDT) Received: by mail-oi1-x232.google.com with SMTP id 5614622812f47-3ae65e8eb45so4543306b6e.1 for ; Wed, 11 Oct 2023 01:28:07 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1697012886; x=1697617686; darn=vger.kernel.org; h=message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=Wzwy8dVzFkqBpnclcii55xn3E3Sc8bsV1BMoAlSfZ1w=; b=OGSDDFr9Su1LsRcBNglx47LCri9qfjvIoTltpmcJ7wYFl2GcdYp0baT8iQlb7Qn2AC PPxKyUv/j+9v23w19jJztopO0Tiwy5ZUTTQ4HriNyTzX7x2UMuRTq4uSqfOGJsD8zzFj 4jnoQPVmZsaxF8ZjQxN6ORYBVCyA3f6ENgTpsF097Nq54KFtpvwaaZejsqoa/WQTXoo/ cntM3R/HCJ1am2nP/SjJs5qxFNj7OnLZEP43uBmMHLE0LWCYecul3A4CUE/U0KOZk7L0 FLXZR5znY+56KivEuVYefaC4xCQ1WPkdMTDjzWmivXC5pZe3XUG5k+Mom4QWxB227C6z JUwQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1697012886; x=1697617686; h=message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Wzwy8dVzFkqBpnclcii55xn3E3Sc8bsV1BMoAlSfZ1w=; b=uVgSfm36p/JNS+oxCwgUoKGtam1nT2dlY3IChQ+mGIAnc/9syTGZu1Pc2xdJpQMbSa VgKfPgIZ2MaO4ikQG6QFomzgLizqcW6pgrqK4ZnI7COtkR1tiwkE2D6WAmOndnOAPOda htV/eli6xLydBtywnKmhJNnaRgd+DxThDolzE5h4Vu7ZwMkA/GZ6XQ2gqBCCJH0kuWWY A9KJGC/TPMiCGR5PPYAi9czqOYR4pAL1NxeoZgO9QtxIQRbZ5juYe832pB/oB8TReeU/ 34RsDDLbwRpKJ+Rw5Q6d88souh6ema/4nggyBrpRmrd0qtrrheJui6anNh+puLcpZfLW je1g== X-Gm-Message-State: AOJu0YxCNYzbSxFQWAfxDh89CVS+y34LzyAoRFECdt+NhNt/zJpSMzAo 5JvProO+dTg+M5kknpVrZBo= X-Received: by 2002:a05:6358:70c:b0:142:d71b:59ce with SMTP id e12-20020a056358070c00b00142d71b59cemr23075111rwj.26.1697012886601; Wed, 11 Oct 2023 01:28:06 -0700 (PDT) Received: from MSCND1355B05.fareast.nevint.com ([183.242.39.186]) by smtp.gmail.com with ESMTPSA id z22-20020aa791d6000000b006862b2a6b0dsm9866888pfa.15.2023.10.11.01.28.03 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 11 Oct 2023 01:28:06 -0700 (PDT) From: Zqiang To: tj@kernel.org, jiangshanlai@gmail.com Cc: linux-kernel@vger.kernel.org, qiang.zhang1211@gmail.com Subject: [PATCH v2] workqueue: Use the kmem_cache_free() instead of kfree() to release pwq Date: Wed, 11 Oct 2023 16:27:59 +0800 Message-Id: <20231011082759.8570-1-qiang.zhang1211@gmail.com> X-Mailer: git-send-email 2.17.1 X-Spam-Status: No, score=3.0 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,RCVD_IN_SBL_CSS, SPF_HELO_NONE,SPF_PASS autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on groat.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (groat.vger.email [0.0.0.0]); Wed, 11 Oct 2023 01:28:30 -0700 (PDT) X-Spam-Level: ** Currently, the kfree() be used for pwq objects allocated with kmem_cache_alloc() in alloc_and_link_pwqs(), this isn't wrong. but usually, use "trace_kmem_cache_alloc/trace_kmem_cache_free" to track memory allocation and free. this commit therefore use kmem_cache_free() instead of kfree() in alloc_and_link_pwqs() and also consistent with release of the pwq in rcu_free_pwq(). Signed-off-by: Zqiang --- kernel/workqueue.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/kernel/workqueue.c b/kernel/workqueue.c index ebe24a5e1435..6f74cab2bd5a 100644 --- a/kernel/workqueue.c +++ b/kernel/workqueue.c @@ -4610,8 +4610,12 @@ static int alloc_and_link_pwqs(struct workqueue_struct *wq) enomem: if (wq->cpu_pwq) { - for_each_possible_cpu(cpu) - kfree(*per_cpu_ptr(wq->cpu_pwq, cpu)); + for_each_possible_cpu(cpu) { + struct pool_workqueue *pwq = *per_cpu_ptr(wq->cpu_pwq, cpu); + + if (pwq) + kmem_cache_free(pwq_cache, pwq); + } free_percpu(wq->cpu_pwq); wq->cpu_pwq = NULL; } -- 2.17.1