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=-13.8 required=3.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,INCLUDES_CR_TRAILER,INCLUDES_PATCH,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS,URIBL_RED autolearn=unavailable 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 5FE74C11F69 for ; Thu, 1 Jul 2021 14:56:15 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id D6A586141F for ; Thu, 1 Jul 2021 14:56:14 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org D6A586141F Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=kernel.org Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=owner-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix) id 153376B008C; Thu, 1 Jul 2021 10:56:14 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 102338D0001; Thu, 1 Jul 2021 10:56:14 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id EE48F6B009C; Thu, 1 Jul 2021 10:56:13 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0059.hostedemail.com [216.40.44.59]) by kanga.kvack.org (Postfix) with ESMTP id C98706B008C for ; Thu, 1 Jul 2021 10:56:13 -0400 (EDT) Received: from smtpin27.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay01.hostedemail.com (Postfix) with ESMTP id 89BEE181CBDBE for ; Thu, 1 Jul 2021 14:56:13 +0000 (UTC) X-FDA: 78314319426.27.6FF35EE Received: from mail-pl1-f179.google.com (mail-pl1-f179.google.com [209.85.214.179]) by imf10.hostedemail.com (Postfix) with ESMTP id A8973600BF93 for ; Thu, 1 Jul 2021 14:55:44 +0000 (UTC) Received: by mail-pl1-f179.google.com with SMTP id h6so2661032plf.11 for ; Thu, 01 Jul 2021 07:55:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:date:from:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to; bh=eJQhk3uEL98zPf3pJBp+kxoy122ICJrRC9Whg+JhjOg=; b=WeBa1DuP247mVLYDg5bSzF0QuwvUWIKLJwEr9BhCj846FUPTslnZaQcz9KLBdmPVAR 9gsK5aAG67OcKg/v3sZHucgHKRc87Q3ZIRekrrUTZ4cBdxVq4amvMNHyh/oCuB3dGP4z viCPlh8TmOYOcjCde3llIy7yiWEHlxVF2TVEire/MA7KUXVU2wfc0nj7jVLjb2ntwwfu NhI63RdbLmTWBMpVG606Dw32rP7S4/fAdr+fLqt7tiga73mL0Sr4zKGEYhUkP5cvyntT LK61yKeNtPbLlfLIzDlO5s32co9IwJTOVdLI5Qp2fWttEjM/0tAY5Sg+pnXUSkkga4Kn 2iOg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:date:from:to:cc:subject:message-id :references:mime-version:content-disposition:in-reply-to; bh=eJQhk3uEL98zPf3pJBp+kxoy122ICJrRC9Whg+JhjOg=; b=XSQwPAHKp8CGGDDPyd4nXkn21HpTUMFkLAMXVLQX/VGwJ+OxTkBr7Xph5m7VWjMRrQ MdbPikBCDs0fSGpf+zwyLT2Vi/WBKfqo78gimV8b2Qk0epqJGvNP5+/hLjA5G/JpeGTv vVJ1QK/cbbXYDRHw6zbzBbEA6QKlGPVhInkZb9RAWvVCmvH7unwIUTHdJ+uXxV7584fm 0xXA2h7gvnnA7NKMsa4HM6YI92j4lsB59TKwjt/zEBMF7pUjWV2HGEfMwn2gnuqecAfI Dr8k+OzAVoDHKZmd6Rs3eVmHDrjGX3y97qrTEyA8ORnWcF59ltQU3KcbJrz2evdwBDXS xtvg== X-Gm-Message-State: AOAM533fIhL+VWAaM02qqdLsvtIwGCUhX148WpN/H4QVhTHGokK/iPiK HwzcO6crjWe9sy+rcLeVzzQ= X-Google-Smtp-Source: ABdhPJz46RQN7SPmSLFVqzlpyQKQhq35ocG1qVDPlCjG2MK0CcZGI+45dvkeev9DIZR0pdMssdJB9g== X-Received: by 2002:a17:903:18d:b029:128:d71a:4773 with SMTP id z13-20020a170903018db0290128d71a4773mr89799plg.76.1625151343585; Thu, 01 Jul 2021 07:55:43 -0700 (PDT) Received: from google.com ([2620:15c:211:201:e476:fcd4:d1bf:22a2]) by smtp.gmail.com with ESMTPSA id y7sm229507pfi.204.2021.07.01.07.55.42 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 01 Jul 2021 07:55:42 -0700 (PDT) Date: Thu, 1 Jul 2021 07:55:41 -0700 From: Minchan Kim To: Andrew Morton Cc: linux-mm@kvack.org, mm-commits@vger.kernel.org, senozhatsky@chromium.org, torvalds@linux-foundation.org, zhaoyang.huang@unisoc.com Subject: Re: [patch 108/192] mm: zram: amend SLAB_RECLAIM_ACCOUNT on zspage_cachep Message-ID: References: <20210630184624.9ca1937310b0dd5ce66b30e7@linux-foundation.org> <20210701015258.BrxjIzdE1%akpm@linux-foundation.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20210701015258.BrxjIzdE1%akpm@linux-foundation.org> X-Rspamd-Server: rspam01 X-Rspamd-Queue-Id: A8973600BF93 Authentication-Results: imf10.hostedemail.com; dkim=pass header.d=gmail.com header.s=20161025 header.b=WeBa1DuP; spf=pass (imf10.hostedemail.com: domain of minchankim@gmail.com designates 209.85.214.179 as permitted sender) smtp.mailfrom=minchankim@gmail.com; dmarc=fail reason="SPF not aligned (relaxed), DKIM not aligned (relaxed)" header.from=kernel.org (policy=none) X-Stat-Signature: gyq8yr394ixtqfbj4b1fbn5roczo3t4d X-HE-Tag: 1625151344-912400 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: On Wed, Jun 30, 2021 at 06:52:58PM -0700, Andrew Morton wrote: > From: Zhaoyang Huang > Subject: mm: zram: amend SLAB_RECLAIM_ACCOUNT on zspage_cachep > > Zspage_cachep is found be merged with other kmem cache during test, which > is not good for debug things (zs_pool->zspage_cachep present to be another > kmem cache in memory dumpfile). It is also neccessary to do so as > shrinker has been registered for zspage. > > Amending this flag can help kernel to calculate SLAB_RECLAIMBLE correctly. > > Link: https://lkml.kernel.org/r/1623137297-29685-1-git-send-email-huangzhaoyang@gmail.com > Signed-off-by: Zhaoyang Huang > Cc: Minchan Kim > Cc: Sergey Senozhatsky > Signed-off-by: Andrew Morton Sorry for the late. I don't think this is correct. It's true "struct zspage" can be freed by zsmalloc's compaction registerred by slab shrinker so tempted to make it SLAB_RECLAIM_ACCOUNT. However, it's quite limited to work only when objects in the zspage are heavily fragmented. Once the compaction is done, zspage are never discardable until objects are fragmented again. It means it could hurt other reclaimable slab page reclaiming since the zspage slab object pins the page. > --- > > mm/zsmalloc.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > --- a/mm/zsmalloc.c~mm-zram-amend-slab_reclaim_account-on-zspage_cachep > +++ a/mm/zsmalloc.c > @@ -328,7 +328,7 @@ static int create_cache(struct zs_pool * > return 1; > > pool->zspage_cachep = kmem_cache_create("zspage", sizeof(struct zspage), > - 0, 0, NULL); > + 0, SLAB_RECLAIM_ACCOUNT, NULL); > if (!pool->zspage_cachep) { > kmem_cache_destroy(pool->handle_cachep); > pool->handle_cachep = NULL; > _