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 F02A5C54E58 for ; Fri, 15 Mar 2024 08:43:41 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 8296180108; Fri, 15 Mar 2024 04:43:41 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 7D989800B4; Fri, 15 Mar 2024 04:43:41 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 6792A80108; Fri, 15 Mar 2024 04:43:41 -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 570E2800B4 for ; Fri, 15 Mar 2024 04:43:41 -0400 (EDT) Received: from smtpin22.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id 2A42B160B5D for ; Fri, 15 Mar 2024 08:43:41 +0000 (UTC) X-FDA: 81898635042.22.468DFD8 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.13]) by imf07.hostedemail.com (Postfix) with ESMTP id 48D054000E for ; Fri, 15 Mar 2024 08:43:38 +0000 (UTC) Authentication-Results: imf07.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=NtzrZMe5; dmarc=pass (policy=none) header.from=intel.com; spf=pass (imf07.hostedemail.com: domain of ying.huang@intel.com designates 198.175.65.13 as permitted sender) smtp.mailfrom=ying.huang@intel.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1710492218; 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: in-reply-to:in-reply-to:references:references:dkim-signature; bh=tXKe63s0UNzJNiEAZFr1S/MifMLAjNAKfT99a+z+qe4=; b=ZsXnKlcKFa6u6j2jUi9BJaTro7xSofuyQCw67NWKZsNbty00WpADb+C9NOvcBQv4L2OI7B LmYByapX8lkBhog9yUW5xlvNab606slLAeMbb8vayARZB/6iGnPdHfqscfEA6YxwrdroSz rT+W08f037r8W0WkhfIvgevkz53WNv4= ARC-Authentication-Results: i=1; imf07.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=NtzrZMe5; dmarc=pass (policy=none) header.from=intel.com; spf=pass (imf07.hostedemail.com: domain of ying.huang@intel.com designates 198.175.65.13 as permitted sender) smtp.mailfrom=ying.huang@intel.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1710492218; a=rsa-sha256; cv=none; b=OkLYB0f3PFzO55g+bDBwBoPcZbVoxJPb6sFI4gNcddkYt1BG3GPzxjzpzjohhU0cQYXSqM kS2SOkFTaEmv3nYON/d4ALLB10p1qtqqqgPPda5DfkEIQ3vHjmSpfO+puxNpxdS6rOkUDT jkzoDr/5fLKk7ozuL1SSFmMfCMtZNlI= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1710492218; x=1742028218; h=from:to:cc:subject:in-reply-to:references:date: message-id:mime-version; bh=WWHHW90wK8/G15XckvW+3s0nidylONdVyAdhQ9e18Do=; b=NtzrZMe54IUBzJ8/wikP7GCrrvc4yDTkX5j0l+7+BmSiuJki3wzAqGXl rSWzidmx97kjLifu0qq57KZnorSmWgcfchhDDODLAaF0lLAFCiTYfCc7F bREv8bKXAnO7xrr+v9Ikbj9Y4xu1RkyjbDfMtViQ0inAfMggAIV4nNbgy kWQ+vyzA/BZ98w6OAy4za6L7ec4Ebq6ffCjnrV+tKnGPV1WRHOSxHvgkN bUTJ4e6aAM21ziEUlouI93FCRlolrdfE5lfiScmKdhFW7Qz43WSPJAjig 2PxfpVioJ3ZjSBadRyGvzydtcAtUoO3flEpIyYjV/cGpZdt136TwbULLU A==; X-IronPort-AV: E=McAfee;i="6600,9927,11013"; a="16499628" X-IronPort-AV: E=Sophos;i="6.07,128,1708416000"; d="scan'208";a="16499628" Received: from fmviesa007.fm.intel.com ([10.60.135.147]) by orvoesa105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 15 Mar 2024 01:43:36 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.07,128,1708416000"; d="scan'208";a="12519204" Received: from yhuang6-desk2.sh.intel.com (HELO yhuang6-desk2.ccr.corp.intel.com) ([10.238.208.55]) by fmviesa007-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 15 Mar 2024 01:43:31 -0700 From: "Huang, Ying" To: Barry Song <21cnbao@gmail.com>, Matthew Wilcox Cc: akpm@linux-foundation.org, linux-mm@kvack.org, ryan.roberts@arm.com, chengming.zhou@linux.dev, chrisl@kernel.org, david@redhat.com, hannes@cmpxchg.org, kasong@tencent.com, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, mhocko@suse.com, nphamcs@gmail.com, shy828301@gmail.com, steven.price@arm.com, surenb@google.com, wangkefeng.wang@huawei.com, willy@infradead.org, xiang@kernel.org, yosryahmed@google.com, yuzhao@google.com, Chuanhua Han , Barry Song Subject: Re: [RFC PATCH v3 5/5] mm: support large folios swapin as a whole In-Reply-To: <20240304081348.197341-6-21cnbao@gmail.com> (Barry Song's message of "Mon, 4 Mar 2024 21:13:48 +1300") References: <20240304081348.197341-1-21cnbao@gmail.com> <20240304081348.197341-6-21cnbao@gmail.com> Date: Fri, 15 Mar 2024 16:41:37 +0800 Message-ID: <87wmq3yji6.fsf@yhuang6-desk2.ccr.corp.intel.com> User-Agent: Gnus/5.13 (Gnus v5.13) MIME-Version: 1.0 Content-Type: text/plain; charset=ascii X-Rspamd-Queue-Id: 48D054000E X-Rspam-User: X-Rspamd-Server: rspam05 X-Stat-Signature: b3if6drbdiqpsn9hydp9ny1pt8bdgtkc X-HE-Tag: 1710492218-37377 X-HE-Meta: U2FsdGVkX19HjqVcwB0D9vib8zGfc/p8pVLPby3VAFtaW6glmFg8bsRixkbFluXYeRljZswW2ZB6ZU4BFKUfWowWZbyR9WWwTVNTtm9514jZrImNVfyDnoOCyLDiHF+oFR1bKtB7wFtcX0cRchaKLSskW9Hg8erPyXvQkJUV6ne8mcWDbQ1zmuClg6IyAh/ENsCnlRSV9iNPE3/hyMUgI7OGHi6KkKDxMr8xMnJiLL9/T47vuUwzWzRFJtNmDfBPbPQUp+6Yv+fJ/OLJW7hCWHHBa8Z0D/22Y1K9rfcXX47Slq1+uCFw6WeXUnQdVGYm4ZmexPw0VwCerN0VZ8LgKUrk/mJl2YKaVWdtMObfhH7rBGD6KdGJXL5+aWjGwhdfy8rcH76wTkd5jpK5ITO7/LAKViV57Yw1y/kgGhLucz4yNcufwqq5FmXY0H0VOozyszGhjeOWKuxPew7kn6/afbz5XhqO0aou2qJrFR+H+LqJiuNUuhxIoCNQiVq972GOiKRwd45nURMDIpayPKrn69Hp1HGqGxb5CR0ELK0BEF6ZG1Vi6yfchspzOT7cmA/bg9UGKXk+rjhlnGxnAGiOPDla6eCyMUJWfSwVjIR60TYby4Nc5+oqQ6y5cChkmQfC1a4SarWsLb/fC1ZoyMxlvgFWYbeL+tka/UNikor1Posza7OzWnAq8LQxycw+WyWPVTkUw6VOpunX1CTRU1cfsZzRGFRsrN0iXntAjFXccTMUuu+oky/D1yBG/3NIGER2u+Mj8VpH4sYQQKM0ERj9LeAhlDd2x4yrUftPSyPzI7EFQgIEg3RRn+822uSHnQTTrlgzZmbJOZeFytGddWjeNWSCvtWZU+Cw 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: List-Subscribe: List-Unsubscribe: Barry Song <21cnbao@gmail.com> writes: > From: Chuanhua Han > > On an embedded system like Android, more than half of anon memory is > actually in swap devices such as zRAM. For example, while an app is > switched to background, its most memory might be swapped-out. > > Now we have mTHP features, unfortunately, if we don't support large folios > swap-in, once those large folios are swapped-out, we immediately lose the > performance gain we can get through large folios and hardware optimization > such as CONT-PTE. > > This patch brings up mTHP swap-in support. Right now, we limit mTHP swap-in > to those contiguous swaps which were likely swapped out from mTHP as a > whole. > > Meanwhile, the current implementation only covers the SWAP_SYCHRONOUS > case. It doesn't support swapin_readahead as large folios yet since this > kind of shared memory is much less than memory mapped by single process. In contrast, I still think that it's better to start with normal swap-in path, then expand to SWAP_SYCHRONOUS case. In normal swap-in path, we can take advantage of swap readahead information to determine the swapped-in large folio order. That is, if the return value of swapin_nr_pages() > 1, then we can try to allocate and swapin a large folio. To do that, we need to track whether the sub-pages are accessed. I guess we need that information for large file folio readahead too. Hi, Matthew, Can you help us on tracking whether the sub-pages of a readahead large folio has been accessed? > Right now, we are re-faulting large folios which are still in swapcache as a > whole, this can effectively decrease extra loops and early-exitings which we > have increased in arch_swap_restore() while supporting MTE restore for folios > rather than page. On the other hand, it can also decrease do_swap_page as > PTEs used to be set one by one even we hit a large folio in swapcache. > -- Best Regards, Huang, Ying