From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.6 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 5623AC433E0 for ; Mon, 15 Jun 2020 06:23:13 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id 16CBD20707 for ; Mon, 15 Jun 2020 06:23:13 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="tuLq/owq" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 16CBD20707 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=owner-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix) id BB2156B0003; Mon, 15 Jun 2020 02:23:12 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id B62426B0005; Mon, 15 Jun 2020 02:23:12 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id A2A746B0006; Mon, 15 Jun 2020 02:23:12 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0194.hostedemail.com [216.40.44.194]) by kanga.kvack.org (Postfix) with ESMTP id 87D346B0003 for ; Mon, 15 Jun 2020 02:23:12 -0400 (EDT) Received: from smtpin26.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay03.hostedemail.com (Postfix) with ESMTP id 4162F824556B for ; Mon, 15 Jun 2020 06:23:12 +0000 (UTC) X-FDA: 76930453824.26.jelly71_1000e4826df4 Received: from filter.hostedemail.com (10.5.16.251.rfc1918.com [10.5.16.251]) by smtpin26.hostedemail.com (Postfix) with ESMTP id 172941804B656 for ; Mon, 15 Jun 2020 06:23:12 +0000 (UTC) X-HE-Tag: jelly71_1000e4826df4 X-Filterd-Recvd-Size: 4472 Received: from mail-qk1-f196.google.com (mail-qk1-f196.google.com [209.85.222.196]) by imf31.hostedemail.com (Postfix) with ESMTP for ; Mon, 15 Jun 2020 06:23:11 +0000 (UTC) Received: by mail-qk1-f196.google.com with SMTP id 205so14742051qkg.3 for ; Sun, 14 Jun 2020 23:23:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=u1aMWbf91EME1dQ55dwYmEZLJPJcrTDI7r5Xx36ru2E=; b=tuLq/owqSmSJaSBZ4l9Dt2wlgk2I4yQ5LI0bpu+aIXLb4ixIBhf/e44oRIk/ewJ48U yjPeb9jvqzG/fhWVKf5PaPKJxQ6zq3+tG2DUJCt+R78jDOIzz86TjP2gILlp7YemfrKP eKdf72e1cP9V3bRS4ZkVtKhI1ql2y3WQAa0NTSNRVi2DpVje9SP45YOxf47jbMN7yCiC Gxbj2APayCxKpGtlXV1myMKNR0ZESC1rcTVklf3hfriaWgDSvQ7qqw/J7b2EkFdhoAv/ IOoS1rO248NufXvgqRwPhCcikLut9p+j2SUkWPVC43C3C+O83/e2P6IVnXf67xqemAUw dczA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=u1aMWbf91EME1dQ55dwYmEZLJPJcrTDI7r5Xx36ru2E=; b=dDptR2jA5cKoGIidTVK+uF+SQ6BAT7LB76++NT8glSVNdQuqzRTRB7iAabcBWj1HrL wl/qGEhJKU5WQyYGPRNZw36fjwhyNSCAz5PiqO4cEKOTPjP+gOM8f/7wvZCSQfGTyVHu 12rjKDgPRoaEw92DMaZgCVDITQP/oKMv6DLDVRiEmWMe+XxkdgaHcLjBt1KBPQJMJdvN PHfHhv1k3MKN8UwfGXRYKVcqy0Sn3lgrZsTB5NdTwtfm2PZnR59urK6C9PYfeeUnKXIE u+/Pbh44vQX7WGN2AeKna+BUfYMWUDcd3mIuXiEhFpIxop76HU79lEaRFJFGns0Crs6v wtEA== X-Gm-Message-State: AOAM531Wjzl7NzcatWvn0m8uazx27TCElJEO5spL/DcEFc6V9c6TpHFq On1TK+vYKvAyk8rYJnt9At/iV1Ilfce8TFSofD0= X-Google-Smtp-Source: ABdhPJzaUTyyK3ALiZGwOJyQcjCWf2aYpXazWhwu6aXNXN9yW/ORW1jLgP1ZVK7q5pBHbO8iixryxUhSXUSMbYGRN8Y= X-Received: by 2002:a37:624a:: with SMTP id w71mr14168388qkb.452.1592202191135; Sun, 14 Jun 2020 23:23:11 -0700 (PDT) MIME-Version: 1.0 References: <20200614123923.99189-1-songmuchun@bytedance.com> <20200614123923.99189-4-songmuchun@bytedance.com> In-Reply-To: <20200614123923.99189-4-songmuchun@bytedance.com> From: Joonsoo Kim Date: Mon, 15 Jun 2020 15:23:00 +0900 Message-ID: Subject: Re: [PATCH 3/3] mm/slub: Fix release all resources used by a slab cache To: Muchun Song Cc: Christoph Lameter , Pekka Enberg , David Rientjes , Joonsoo Kim , Andrew Morton , Linux Memory Management List , LKML Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspamd-Queue-Id: 172941804B656 X-Spamd-Result: default: False [0.00 / 100.00] X-Rspamd-Server: rspam02 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: 2020=EB=85=84 6=EC=9B=94 14=EC=9D=BC (=EC=9D=BC) =EC=98=A4=ED=9B=84 9:39, M= uchun Song =EB=8B=98=EC=9D=B4 =EC=9E=91=EC=84=B1: > > The function of __kmem_cache_shutdown() is that release all resources > used by the slab cache, while currently it stop release resources when > the preceding node is not empty. > > Signed-off-by: Muchun Song > --- > mm/slub.c | 7 ++++--- > 1 file changed, 4 insertions(+), 3 deletions(-) > > diff --git a/mm/slub.c b/mm/slub.c > index b73505df3de2..4e477ef0f2b9 100644 > --- a/mm/slub.c > +++ b/mm/slub.c > @@ -3839,6 +3839,7 @@ bool __kmem_cache_empty(struct kmem_cache *s) > */ > int __kmem_cache_shutdown(struct kmem_cache *s) > { > + int ret =3D 0; > int node; > struct kmem_cache_node *n; > > @@ -3846,11 +3847,11 @@ int __kmem_cache_shutdown(struct kmem_cache *s) > /* Attempt to free all objects */ > for_each_kmem_cache_node(s, node, n) { > free_partial(s, n); > - if (node_nr_slabs(n)) > - return 1; > + if (!ret && node_nr_slabs(n)) > + ret =3D 1; > } I don't think that this is an improvement. If the shutdown condition isn't met, we don't need to process further. Just 'return 1' looks okay to me. And, with this change, sysfs_slab_remove() is called even if the shutdown is failed. It's better not to have side effects when failing. Thanks.