From patchwork Sat Aug 17 05:09:18 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Sridhar, Kanchana P" X-Patchwork-Id: 13766983 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 09D55C531DC for ; Sat, 17 Aug 2024 05:09:31 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 7CB5B8D00C2; Sat, 17 Aug 2024 01:09:31 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 77AFC8D00B8; Sat, 17 Aug 2024 01:09:31 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 640FC8D00C2; Sat, 17 Aug 2024 01:09:31 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id 46B998D00B8 for ; Sat, 17 Aug 2024 01:09:31 -0400 (EDT) Received: from smtpin03.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id B69DF1602B3 for ; Sat, 17 Aug 2024 05:09:30 +0000 (UTC) X-FDA: 82460559300.03.C944C1D Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.15]) by imf26.hostedemail.com (Postfix) with ESMTP id 22E00140012 for ; Sat, 17 Aug 2024 05:09:27 +0000 (UTC) Authentication-Results: imf26.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=oKrnXtOl; dmarc=pass (policy=none) header.from=intel.com; spf=pass (imf26.hostedemail.com: domain of kanchana.p.sridhar@intel.com designates 198.175.65.15 as permitted sender) smtp.mailfrom=kanchana.p.sridhar@intel.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1723871308; a=rsa-sha256; cv=none; b=KxpPvpYTNS/QSgA5dgnYX212E6lKK7x+0KZ40EHRi+vRKDFReVQVeGp1mPsSUG+eq/fMZ7 YSaR/1IU0E2evETQHkX9SjJAK6D4mluMJA3GS1My6TPVyDzcTNOh3SoF5LcTm1wl77Tk2R ThJ4X+kriQsK/K1fAbEvn4N6TGJHtsw= ARC-Authentication-Results: i=1; imf26.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=oKrnXtOl; dmarc=pass (policy=none) header.from=intel.com; spf=pass (imf26.hostedemail.com: domain of kanchana.p.sridhar@intel.com designates 198.175.65.15 as permitted sender) smtp.mailfrom=kanchana.p.sridhar@intel.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1723871308; 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-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=naruCmolxM1VTIhLrUrisUJHcgVK8pYYLgjjkbmUCc0=; b=iQf4mKIx3Qo1ZjU5qcL5NYOXC06yykaDgAYCsxnwvW3VsUaeMo0fJF7cdYNP64iVilYHwJ NOiW3QF0N7WFkUK86acg9ut3VEL1R+vGhpcTRQHIf2kIO3BxbCGIH6yw8gZNh/ehx92A+e 8LJR3KyPhv7L0Pe9L0xmE9iFDcvdcqI= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1723871368; x=1755407368; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=8aJTLnzMPmjHtUmt/CSvhY9AKnZREM8rFjycd3MYym0=; b=oKrnXtOlNgZzN/Z2G65xZA45MFO26Jk0kknqB3x1bXy2PXmaTohPXD4O ydzGLP4tn8gDcYKcJe/bMxqOhhgiKOEJG4xJNl5joysBuF5UT8oKv60h7 O7awbUHihYyEzNvvhIXp0YCewIjQVQgR6cynCXSiEtpN6MtWPPiF7IgL/ kH1rJveQjF7JCm1SMJ2T8bjO6zgWLI0ce9ciOov99c5N4eYpChkz2aWjr PFyz5amvuMAyJIk0IZx5bnigXcZ/WTE/iWlWeq4/61xVGOE9aW0c+2+VW BfptlzSZJmzUgxzIPVCLjfReD9UplZuWZmhR77IWE2lWV4ZvQCHkeZWUa Q==; X-CSE-ConnectionGUID: 0G94JpK7SZarsuQkhtsLVA== X-CSE-MsgGUID: G0KxMJ2iQb6KlmBkEhWe1Q== X-IronPort-AV: E=McAfee;i="6700,10204,11166"; a="25929465" X-IronPort-AV: E=Sophos;i="6.10,154,1719903600"; d="scan'208";a="25929465" Received: from orviesa006.jf.intel.com ([10.64.159.146]) by orvoesa107.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 16 Aug 2024 22:09:21 -0700 X-CSE-ConnectionGUID: SVdXdoIIRwOh7Pc03Kd8zg== X-CSE-MsgGUID: Uu+OYl+RRTiJZwt1cW3OLg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.10,154,1719903600"; d="scan'208";a="60141492" Received: from jf5300-b11a338t.jf.intel.com ([10.242.51.6]) by orviesa006.jf.intel.com with ESMTP; 16 Aug 2024 22:09:21 -0700 From: Kanchana P Sridhar To: linux-kernel@vger.kernel.org, linux-mm@kvack.org, hannes@cmpxchg.org, yosryahmed@google.com, nphamcs@gmail.com, ryan.roberts@arm.com, ying.huang@intel.com, 21cnbao@gmail.com, akpm@linux-foundation.org Cc: nanhai.zou@intel.com, wajdi.k.feghali@intel.com, vinodh.gopal@intel.com, kanchana.p.sridhar@intel.com Subject: [PATCH v3 1/4] mm: zswap: zswap_is_folio_same_filled() takes an index in the folio. Date: Fri, 16 Aug 2024 22:09:18 -0700 Message-Id: <20240817050921.18462-2-kanchana.p.sridhar@intel.com> X-Mailer: git-send-email 2.27.0 In-Reply-To: <20240817050921.18462-1-kanchana.p.sridhar@intel.com> References: <20240817050921.18462-1-kanchana.p.sridhar@intel.com> MIME-Version: 1.0 X-Rspamd-Server: rspam12 X-Rspamd-Queue-Id: 22E00140012 X-Stat-Signature: 387pxdjukqueosjeuioazaiy56cgn4su X-Rspam-User: X-HE-Tag: 1723871367-291562 X-HE-Meta: U2FsdGVkX1/hIgSrWXNNjDxkRzhOTzesQ0v6FxRJPZNQTMHIgoPhB+COz8qqCZKit29a196aA8g2nnxk5CehyzinhBRTKzT0ws7wWfmGmlus6isCl7tZJ3xB4EYEh/4Q7HQEQGUDn6rodzTujba0AfhFhLXL+8sDxzo31WUf9wcMYwYvub2j4Oopq4YSEbBoYEjaNn8kdoTwgjmjdYPgaWz/w33CVdZ1rbNTgUjD4Lp2rExMatVDyVeFyBQJ0i7TpUb2rls/pE4NZQ3sNm7+O2YoDox7wUTgoO2MuJHoodStHxvEhkhRJnwkNh3+ep2OsQ0e+z/av/E4+cKs246UcnKXKCBmfVkVXZwP+KGQQ4+AQ5LqdcsJ2FKblCOL47qVg1Mpa4F6BzryZZtuj8PIMp8HGpkNIN8ZVZ0SIu6VNFsk+Kv0lMrn2N/GgYJq9VTJxBJLUxbNUCMgDlNY1l/T2siAZW0gRvpwgu2/pyImayyhcWPvOMVJL5L2UyMMCtAvH4XeJ/+PACGik3DkYR+KpjqLTQTNGKD6FaIlIbHHHiiJA3pyrULPmdroqhoyzCsWVz6u0Y8fkyVT4ckgPRYvp9/iRe29MZD5KeakkEinyqcU7YBrH/xhRAmxBLtyp6LNo2u4GIWNBcBj4eruBI/AJO+luhgLjeW1jeuiTmtX+uua1lbSCu0YUONRC0iRdf4ADbWMtnR2qos5xr9YIYKBGV/uKt3ml9KWBpc9Q0E36vK8C8fZeGBsJaU0gjeJXvrfOwhx0ACPf3jQU08UgDF3q6Ro3REfyRrZQkVKLRPuqJRczRjnMo5zkpOKpu2RJJrvV//7E7eg71EjucS/0oFxbSJ7qjNBftlLbPFxSO22hHN/qTeC1HqxT7oshOZ2StF5uwwgfXSiSDtbdvQuiiIXSCX1oy79dUgAqs1+V5ofvs6y8aDjJaFOLCH3zUw0L/U6JZFsu+MQy8VC/u99QEM c+pLpiQ2 O7/Tnc8CPqwUT8gCKbDyxy0rbaPUCO5VXa/xpAOPwLhpZuRQTD9dkw6PO/sPvATyPyZmcLnSZAkDoM6g8vF4DgqCVAXPBOKfNVfqcF+2hYI22aYRUOn51qa+q8SIsAefyd46ypPfwY+Z4G1DxbyVm7yx7Zf5OSA0qiOsVODwZC/61t8oIXnTr99O+9z7exJ+X8NzbV5G+sjUwCwg= 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: This change is being made so that zswap_store can process mTHP folios. Modified zswap_is_folio_same_filled() to work for any-order folios, by accepting an additional "index" parameter to arrive at the page within the folio to run the same-filled page check. Signed-off-by: Kanchana P Sridhar --- mm/zswap.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/mm/zswap.c b/mm/zswap.c index adeaf9c97fde..6c5c656ec282 100644 --- a/mm/zswap.c +++ b/mm/zswap.c @@ -1358,14 +1358,14 @@ static void shrink_worker(struct work_struct *w) /********************************* * same-filled functions **********************************/ -static bool zswap_is_folio_same_filled(struct folio *folio, unsigned long *value) +static bool zswap_is_folio_same_filled(struct folio *folio, long index, unsigned long *value) { unsigned long *data; unsigned long val; unsigned int pos, last_pos = PAGE_SIZE / sizeof(*data) - 1; bool ret = false; - data = kmap_local_folio(folio, 0); + data = kmap_local_folio(folio, index * PAGE_SIZE); val = data[0]; if (val != data[last_pos]) @@ -1435,7 +1435,7 @@ bool zswap_store(struct folio *folio) goto reject; } - if (zswap_is_folio_same_filled(folio, &value)) { + if (zswap_is_folio_same_filled(folio, 0, &value)) { entry->length = 0; entry->value = value; atomic_inc(&zswap_same_filled_pages);