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 Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 542E9EE4996 for ; Tue, 22 Aug 2023 07:54:41 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id B08DF94002A; Tue, 22 Aug 2023 03:54:40 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id AB8BA94000D; Tue, 22 Aug 2023 03:54:40 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 980BC94002A; Tue, 22 Aug 2023 03:54:40 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0015.hostedemail.com [216.40.44.15]) by kanga.kvack.org (Postfix) with ESMTP id 84EBC94000D for ; Tue, 22 Aug 2023 03:54:40 -0400 (EDT) Received: from smtpin09.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id 53E5E1C8B81 for ; Tue, 22 Aug 2023 07:54:40 +0000 (UTC) X-FDA: 81150978720.09.E8F7682 Received: from mail-pj1-f42.google.com (mail-pj1-f42.google.com [209.85.216.42]) by imf10.hostedemail.com (Postfix) with ESMTP id 658E6C0013 for ; Tue, 22 Aug 2023 07:54:37 +0000 (UTC) Authentication-Results: imf10.hostedemail.com; dkim=pass header.d=bytedance.com header.s=google header.b=SOneL3Nt; dmarc=pass (policy=quarantine) header.from=bytedance.com; spf=pass (imf10.hostedemail.com: domain of zhengqi.arch@bytedance.com designates 209.85.216.42 as permitted sender) smtp.mailfrom=zhengqi.arch@bytedance.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1692690878; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=f4jgfORi8SmWQDQbZiOec8xn7xqyqjppzAhLAq8G/jM=; b=H5sKAI+86oGkH4HMTiYJ09A0HbuTBaaaNjwahFfZ0A1SMwbbSZwun+gF+wi5TC9nxlGx8K gaHzpXkIp7vdQNpBHslXW240iheogvxSbB8iDBuvZYcIoybbMC/8/SbNBOMEYxPyS+J13c l2i7OAy5yAbQixlu2STtR6UXYxWbDnU= ARC-Authentication-Results: i=1; imf10.hostedemail.com; dkim=pass header.d=bytedance.com header.s=google header.b=SOneL3Nt; dmarc=pass (policy=quarantine) header.from=bytedance.com; spf=pass (imf10.hostedemail.com: domain of zhengqi.arch@bytedance.com designates 209.85.216.42 as permitted sender) smtp.mailfrom=zhengqi.arch@bytedance.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1692690878; a=rsa-sha256; cv=none; b=ob2+HAtBYhOQpFcC1M7Uwp7OXp8GCSql/XuLq3zrsJ0/wTZ5Zsiczj6CkAzqA5E1fscAXa OIljpjnHYVi6+dMDb52Uv+FHKzSlWsUm84/pZHg1VGKoJSKIYanHPqE5qXORDRtVEnFBmV ZpbWHSR2cNW97AK9iCT/WrMlkPe2hX4= Received: by mail-pj1-f42.google.com with SMTP id 98e67ed59e1d1-26f381afc15so270786a91.1 for ; Tue, 22 Aug 2023 00:54:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bytedance.com; s=google; t=1692690876; x=1693295676; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=f4jgfORi8SmWQDQbZiOec8xn7xqyqjppzAhLAq8G/jM=; b=SOneL3NtXO9oBFlq98JcoX4t3EnesJboldSnWumz5DiUkBnpG7CqEL1eKt5K9rqcA2 U3RRuLkwT/GCIUVInlzMYcDj50xv/uxs2qyBQzzhPTYMtkXg2PqKFlKcIAWegMjhGkJZ +fKZaiHC6mfcqYHxcipesaABAxYak2/MZ+QrJr3V6cvvZyagkXZ1QARSjdPbn3ezO8GR DM/xTyQvFqdpZfQWlB4kjX8ZI5jxXRK08bUzQm7S1Pr0J54SUbds0ZKp7eHCmdt5Dn0n NGugvmaAkNnFAW1NpNnaUcyir+eJIXKp9n7vk7+IuTaAiuOSGyKdmnu+jJCHneFWcinO cGiQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1692690876; x=1693295676; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=f4jgfORi8SmWQDQbZiOec8xn7xqyqjppzAhLAq8G/jM=; b=L1DLWZAHVei/VAziL25r0vBRiI9D/OsA+uTW1VX8mcLy4V7Q4DlKB7vN7TeJUsEacr 3bne5dhGKklzQC0SncTdH1oUQwsFcxHF35q8YP84WpbQa/OmZQxFN0zNNDR4szqbiRgo Rd7s+SPvNrzBQCEUSX2g0LN2y/6U3WI8rAMacj8KZNI0SMjpnzEeifVk3+IuLNFHKa7A wZsT87xUkKeIusR3wLPuL0B1KImuLWwZ+Q4w+scvku5L8l7hF8YHSJndLU3pDB2eIoq3 UA58CIZnQCpGovY7k0vPneXSQi1wBM4pALgCZ7JIqAqzNMvGVqYyB9/mgc0rOQU/bVAB QtbA== X-Gm-Message-State: AOJu0YzuPS2lZFiPsY3Sq1Hmt+HbCVREwjOiy6t/yOJWLq806/iBqgZD KZy08lykqgORSa4wP5DpETIbAg== X-Google-Smtp-Source: AGHT+IGcQ/Vaoo9QWtXIDxo0cmgc5wb+yjqs29/LxRS2cKLFil77dp/RF48DaAlmNeNv2ExX4nw11A== X-Received: by 2002:a05:6a21:788a:b0:13a:3649:dc1a with SMTP id bf10-20020a056a21788a00b0013a3649dc1amr12492491pzc.0.1692690875899; Tue, 22 Aug 2023 00:54:35 -0700 (PDT) Received: from [10.70.252.135] ([203.208.167.146]) by smtp.gmail.com with ESMTPSA id q6-20020a170902a3c600b001bbdd44bbb6sm8506831plb.136.2023.08.22.00.54.27 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 22 Aug 2023 00:54:35 -0700 (PDT) Message-ID: Date: Tue, 22 Aug 2023 15:54:25 +0800 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.14.0 Subject: Re: [PATCH v2 0/5] use refcount+RCU method to implement lockless slab shrink (part 1) Content-Language: en-US To: akpm@linux-foundation.org, david@fromorbit.com, tkhai@ya.ru, vbabka@suse.cz, roman.gushchin@linux.dev, djwong@kernel.org, brauner@kernel.org, paulmck@kernel.org, tytso@mit.edu, steven.price@arm.com, cel@kernel.org, senozhatsky@chromium.org, yujie.liu@intel.com, gregkh@linuxfoundation.org, muchun.song@linux.dev, joel@joelfernandes.org, christian.koenig@amd.com Cc: linux-kernel@vger.kernel.org, linux-mm@kvack.org, dri-devel@lists.freedesktop.org, linux-fsdevel@vger.kernel.org, Qi Zheng References: <20230817112402.77010-1-zhengqi.arch@bytedance.com> From: Qi Zheng In-Reply-To: <20230817112402.77010-1-zhengqi.arch@bytedance.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 658E6C0013 X-Rspam-User: X-Rspamd-Server: rspam04 X-Stat-Signature: 1365p1w3bmt199xwiafpw7mteximgdne X-HE-Tag: 1692690877-405119 X-HE-Meta: U2FsdGVkX18ECoFwRlegQDbl2k9BJD/Urh0aQUpSvOnZ+H0uAYF/s90/oljJVO1JyDZTtYkN4dTdeWYVWnFp0GlsOKqasw8TaWK9x6fztTo7SwKC9dGlWb55rCUYHILxjslNmeMCUBO5QKOfxXFLLuCD8E2XQrDW/293lGuMDT4+t0A1MG1/UWMwuQfKMY0jRLf9LdJLIeCst4iyNVmjqpKpwlrYL9lQHqzI/1NUbPlH8fcfN4MbtPRcsJnftcAaafEt7qDJq1p0E9bTqLdVSBVrqUqd9cZq5Qx1I25Q47r65btDcKPpZVcK1J/w7KiiUbylwmJbo76T6+l52ReNMPsBxPa7VMqMi/d+dX8KYumD3TVTX8ySncuPCf7ppIiNteUsXzXR1YwybILP6yz5eWd9qrf+VtKO1cPNuLYhU50RS8msACoJF8E7m8kQ+/MsW8cqRs5nqxhVqrQd6nEqv30FTKXt/rRdc4QpIEuE/+GykTx/UClpbu96J/dWZYNrjxWBqK23MYaVkuoNU4n6Hj9FI8GQoxk8KJTSAUeIRa3RgIOGMsMx0hJ2Am4qaxxr9F73ZP/VRsLY0C/yWu98PhwnwVUWHQ92IZbaD8UYP9EOfhyVb5z2U5RaixOP1tmSvEJsabwjgOlXI118q953BbHxcqkuroBBfjkdXRZ/FlRtT98i04RZ6PQ5UdmhsxRqTmhW+9Fa5tkj9cX1nhzPYvfchOE8KRlS4jYiEJ13ZiFlKwMA3vrTspSICOkNZppex6WPHLgtXV4vAvih8gn/OMwq+Fp29tUjOPBdfNv4mV8bDhjea+fss0tIr2XtPVbf+Mv9LIzJT8jjF5piMCCSY32n0Of26S1Bmv3os+ZMRGleMEs+quDpg7a3XtgbqP4ckeXWDQgsncWveKhm+7EUL3mjo/qYxwN/uPHaoA4LQzuZVsilmT9vnV09Rod5JyxlGEwZDxIT8j4/l4/mEVs r7ebPmKv JiCSQ7VPXakM6QiUZKf+3rQ5nI4bXocHcPk9lQlQM41d2trle1v6eOhEFc4JW44BfTzES+ccV1Wc+gaa3iM5iTghaIvEJt/ivdOOwqIUH0f4rEU9jDUYZATv7anDc8rfvf1AwUAKjxxV5DbZMaWyRJUDgGYa2n3gtOrY1W5uGNCeMdwUUaAtAQveXw9tnlHAUDCg9HiRRvEwaE0s8hhW/+FvUzWgdcphSupRBFFBzMpaUYb2daT3ygDtLPZOeq7SBu9kLFodI6dj70fwWQbi+QZIOY87AWS7dn9R4H2780E55He3Ktf2IZ1m2SScCiIPtR9V1txduxy/aLzGJ10VtHyUBO0MVE2uIcIl8ukd8XskhOgTu1p11L957DMOF9O9kORu+CLQcTypMFQ7J4YB/J8+ruOxL9euLtWkWbQ8z+Tyjpc31AcOxz/zPVpIlL8Uc+zjwn8RRbUe6diSWiNS7MlDDh1S6Q+qFvhNNVAP8exOQQyc= 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 2023/8/17 19:23, Qi Zheng wrote: > Hi all, > > To make reviewing and updating easier, I've chosen to split the previous > patchset[1] into the following three parts: > > part 1: some cleanups and preparations > part 2: introduce new APIs and convert all shrinnkers to use these > part 3: implement lockless slab shrink > > This series is the part 1 and is based on the next-20230815. > > Comments and suggestions are welcome. > > [1]. https://lore.kernel.org/lkml/20230807110936.21819-1-zhengqi.arch@bytedance.com/ > > Thanks, > Qi > > Changlog in part 1 v1 -> part 1 v2: > - fix compilation warning in [PATCH 1/5] > - rename synchronize_shrinkers() to ttm_pool_synchronize_shrinkers() > (pointed by Christian König) > - collect Reviewed-by > > Changlog in v4 -> part 1 v1: > - split from the previous large patchset > - fix comment format in [PATCH v4 01/48] (pointed by Muchun Song) > - change to use kzalloc_node() and fix typo in [PATCH v4 44/48] > (pointed by Dave Chinner) > - collect Reviewed-bys > - rebase onto the next-20230815 Hi all, Any more comments and suggestions for this part 1? Or can this part be merged first (just some cleanups and preparations)? Or should I post the part 2 and part 3 first for everyone to review together? Either one is fine for me. :) Thanks, Qi > > Qi Zheng (5): > mm: move some shrinker-related function declarations to mm/internal.h > mm: vmscan: move shrinker-related code into a separate file > mm: shrinker: remove redundant shrinker_rwsem in debugfs operations > drm/ttm: introduce pool_shrink_rwsem > mm: shrinker: add a secondary array for shrinker_info::{map, > nr_deferred} > > drivers/gpu/drm/ttm/ttm_pool.c | 17 +- > include/linux/memcontrol.h | 12 +- > include/linux/shrinker.h | 37 +- > mm/Makefile | 4 +- > mm/internal.h | 28 ++ > mm/shrinker.c | 751 +++++++++++++++++++++++++++++++++ > mm/shrinker_debug.c | 18 +- > mm/vmscan.c | 701 ------------------------------ > 8 files changed, 818 insertions(+), 750 deletions(-) > create mode 100644 mm/shrinker.c >