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 7A9C9C001B0 for ; Tue, 15 Aug 2023 23:32:09 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id B3D14940038; Tue, 15 Aug 2023 19:32:08 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id AECFD8D0001; Tue, 15 Aug 2023 19:32:08 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 94186940038; Tue, 15 Aug 2023 19:32:08 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id 84FED8D0001 for ; Tue, 15 Aug 2023 19:32:08 -0400 (EDT) Received: from smtpin19.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 4C84F80170 for ; Tue, 15 Aug 2023 23:32:08 +0000 (UTC) X-FDA: 81127939536.19.A5C7266 Received: from mgamail.intel.com (mgamail.intel.com [192.55.52.93]) by imf18.hostedemail.com (Postfix) with ESMTP id 916031C0009 for ; Tue, 15 Aug 2023 23:32:04 +0000 (UTC) Authentication-Results: imf18.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=nMvECIzs; dmarc=pass (policy=none) header.from=intel.com; arc=reject ("signature check failed: fail, {[1] = sig:microsoft.com:reject}"); spf=pass (imf18.hostedemail.com: domain of fengwei.yin@intel.com designates 192.55.52.93 as permitted sender) smtp.mailfrom=fengwei.yin@intel.com ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1692142324; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to: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=DTX9YD3Cm/jTYvjZX6REzz0oxVxRVcGgsEBxWbjn48w=; b=qtkYQBmtUMUWi5Tni9zZkx93gfAB79ss71us4z+6ACaTns7tZaFHD/SPmvu3dZs4g9JAwg c1fdVwhwKW2aEgVySQ7YuLiqG6VcAwQwX+iJgbkm0t0z3u4A8sE93cXl9/VrzM9HU4YTxO 3rXGZhKxMmnnWzQcrAkJ+TybBfzh4yU= ARC-Authentication-Results: i=2; imf18.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=nMvECIzs; dmarc=pass (policy=none) header.from=intel.com; arc=reject ("signature check failed: fail, {[1] = sig:microsoft.com:reject}"); spf=pass (imf18.hostedemail.com: domain of fengwei.yin@intel.com designates 192.55.52.93 as permitted sender) smtp.mailfrom=fengwei.yin@intel.com ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1692142324; a=rsa-sha256; cv=fail; b=KtwnfMAiruZsEpyN4CHFWq0H2gocyjNreLrjsMnm8ZMbFAbd9RZkfEAoEGOs6jtHDiCcxE SG59t6ZpXKXydVGA7yfLx9+byl4H/0T2Hc7LtFjphY/J2cruc0A9Gzvh8lGC4tzHadG0un WSBnTl5SaZHHmc/lYUlGD7jr7RnhGx4= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1692142324; x=1723678324; h=message-id:date:subject:to:references:from:in-reply-to: content-transfer-encoding:mime-version; bh=W3Alss24rkmgyQ8r1Q1PR+ZfE41lK1Ve2blopDUXExo=; b=nMvECIzszFRZMqyASbHJNjpOw4HeNYXJbSgdd/Y3hc8kLeDutFKNnZKA hOtQokffiU+RfjDOYBshLQHlE268FUA6+5+riHWC0mWjMJyGMj6YwqmsU U/mWZ+2CP3xKNqqLrKjcxhroupEW3z/TJBFHwlvMeHWjVwZWb0iXaIfHm vsoAJyRiAu21pB36u6jSLt7943dj7niLMlmanlRUDf7HKvvuT6Lztp/tW XqfiYFqzvz/Uf/lyDPGHFajdxyQiQtKiJGNjHorJCe4zVhg/lUxIJeejZ GTHWBbS6OGfoSRU2IzdiSpNe2cvlotjDgS1MwTYHXZwzxwK+dS++iDPCH A==; X-IronPort-AV: E=McAfee;i="6600,9927,10803"; a="369873449" X-IronPort-AV: E=Sophos;i="6.01,175,1684825200"; d="scan'208";a="369873449" Received: from orsmga003.jf.intel.com ([10.7.209.27]) by fmsmga102.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 15 Aug 2023 16:32:02 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10803"; a="683828457" X-IronPort-AV: E=Sophos;i="6.01,175,1684825200"; d="scan'208";a="683828457" Received: from orsmsx601.amr.corp.intel.com ([10.22.229.14]) by orsmga003.jf.intel.com with ESMTP; 15 Aug 2023 16:32:02 -0700 Received: from orsmsx602.amr.corp.intel.com (10.22.229.15) by ORSMSX601.amr.corp.intel.com (10.22.229.14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27; Tue, 15 Aug 2023 16:32:02 -0700 Received: from ORSEDG602.ED.cps.intel.com (10.7.248.7) by orsmsx602.amr.corp.intel.com (10.22.229.15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.27 via Frontend Transport; Tue, 15 Aug 2023 16:32:02 -0700 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (104.47.57.174) by edgegateway.intel.com (134.134.137.103) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.27; Tue, 15 Aug 2023 16:32:01 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Hkm7BGEdEMKcF9sCSqZRzo5cECFSToRvMAAfN0uOg59+KnJFQYUdx8sfQuz/fzdolQrlUY94O0+m0bZOiblxyiE/MqBj2OnlpNPOFPzaBEXWh1vwZz2//YnbTUU6FCe1pMayhHVxlslMtktnca1/XSWmfbCMNg+8ir2EidyjJA+jr5LmCYXAuKDK3E5l1ttltGulR/kTUvi9EV/waSbcK87miR5z3d9g4lA8II/lNwyi6htoAdqeEeieaqrAzXnbIpLM2cG5YuH7HYSwIFO7+RQS1apX5pyrklJPVPB4eO7rIDtLrEg3Mg4ngmMQBT6IOd2xJq5eLNEH/5JkfkIhug== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=DTX9YD3Cm/jTYvjZX6REzz0oxVxRVcGgsEBxWbjn48w=; b=PYZfaj+rYjT30RZoznpgQINMRdmWuoNSoeRu7DDo7weEp2wpIegkyVSCo6E6FVmY5eqPWyYmyeOjjXKoqYOQcDSrbfkEsoZ/JnyL99ulRrNdV8qX8QA4q+CYgRcT0MeH4CnxbRt8CGI+S07ch+sZl+Rn9qvcDiJYSBDCVXh9A0XXPyeCHHXQLYKD+eH7RxbY4oLn+NJhxpPfnSfafyv4MItCcN08TRUBB6bh0aOw7JG/dOTMk0U7xlLduSicaQ/8rgtGjThZGWoMIZtNQjRncfkWHVHUBr1CMYmyjsNh505SCQiB6lMnB8pGsJlDzA61zCj8FUQhNpcwnM3uXJwr2Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none Received: from SJ0PR11MB4831.namprd11.prod.outlook.com (2603:10b6:a03:2d2::20) by MN0PR11MB6059.namprd11.prod.outlook.com (2603:10b6:208:377::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6678.24; Tue, 15 Aug 2023 23:31:59 +0000 Received: from SJ0PR11MB4831.namprd11.prod.outlook.com ([fe80::663f:543f:a672:9ec8]) by SJ0PR11MB4831.namprd11.prod.outlook.com ([fe80::663f:543f:a672:9ec8%4]) with mapi id 15.20.6678.025; Tue, 15 Aug 2023 23:31:59 +0000 Message-ID: <2bfa1931-1fc6-5d6f-cba1-c7a9eb8a279a@intel.com> Date: Wed, 16 Aug 2023 07:30:35 +0800 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Firefox/102.0 Thunderbird/102.11.0 Subject: Re: [PATCH v2 3/3] madvise:madvise_free_pte_range(): don't use mapcount() against large folio for sharing check Content-Language: en-US To: Daniel Gomez , "linux-mm@kvack.org" , "linux-kernel@vger.kernel.org" , "stable@vger.kernel.org" , "akpm@linux-foundation.org" , "willy@infradead.org" , "vishal.moola@gmail.com" , "wangkefeng.wang@huawei.com" , "minchan@kernel.org" , "yuzhao@google.com" , "david@redhat.com" , "ryan.roberts@arm.com" , "shy828301@gmail.com" References: <20230808020917.2230692-1-fengwei.yin@intel.com> <20230808020917.2230692-4-fengwei.yin@intel.com> <4jvrmdpyteny5vaqmcrctzrovap2oy2zuukybbhfqyqbbb5xmy@ufgxufss2ngw> From: Yin Fengwei In-Reply-To: <4jvrmdpyteny5vaqmcrctzrovap2oy2zuukybbhfqyqbbb5xmy@ufgxufss2ngw> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-ClientProxiedBy: SG2PR01CA0114.apcprd01.prod.exchangelabs.com (2603:1096:4:40::18) To SJ0PR11MB4831.namprd11.prod.outlook.com (2603:10b6:a03:2d2::20) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ0PR11MB4831:EE_|MN0PR11MB6059:EE_ X-MS-Office365-Filtering-Correlation-Id: 4d0aebc8-6473-40d5-7d47-08db9de7d232 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: qi5PmaWqxMwwiljpqb/GIC/KjfEhTxLFfRIl9+iMsF84vITVSGtMYiXRuLeSmvJSwK5iKlubhcOeo/r9UlwGAraDwJ2FyAqhZJck1VgaV4fseaYC2Q88g9F4Gk3sQIPcwHCT2bHzqTfLxpuAv9bQwuZl6nX5rDVfdu9MwWLcmFTULlsdOaAzY64ZtlF07ibZIPqApgJHI5InlYAas+R76CHVL8fMnS3cfI1oVzS+b1Y2vHhwgr/wBk7dCyWGDAyVcNvD3AtDbJ26iKcq9IskHcTiFCnAPVKbDGt+PZFg2wWerY6FrH+jMtHF0fdy6kkmjF4l4xx/Z/V+dbZDPqb4N7nnbahQTYL4SVsl0U5X4EdoBiQ3oDPbYZAYRjOMOw2ymO8kIU9ANp3M/cACBhK/nbrRJ5aQQTMx1ccVy1vEP1asUdmB9V+/tv59sRRnVpIs9CxH9GRjEmmF5idSvONPeQpwnacfolmkCx45W4y9j6c/zYrnjXnPiOC6z4uzRIJu1+BA0drwkk2VrBUK1eASynDYK6jOv8bTCRHlzC44czN7nvy2eZqMKwT5Se60U5Z5k+kjC65uLr3HXhO95kA3qqmCYabmIWI0lXQFhzZgZpOjvRHUh6d3r4O9afiKZr95UOCr5czaaUF3SEnIKTEhBrYuVb3GUMlocNCOyGbY30I= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:SJ0PR11MB4831.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(366004)(346002)(396003)(376002)(39860400002)(136003)(451199024)(186009)(1800799009)(82960400001)(8936002)(53546011)(6666004)(38100700002)(26005)(8676002)(110136005)(921005)(83380400001)(66556008)(86362001)(31686004)(2616005)(2906002)(7416002)(31696002)(6486002)(36756003)(66946007)(478600001)(41300700001)(316002)(66476007)(6512007)(5660300002)(6506007)(45980500001)(43740500002);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?TmsrbkxVbEs3QUJXa3Z6c0NUNGlOd1c0ajhNMHNXcEtXUWRPeUlNYmxTOW1o?= =?utf-8?B?R0pseGRxeW9NUjNMSHBGV3dUeVdKK2pjWTNBcUMzM1Y0VWUzMVViZHljTWpo?= =?utf-8?B?RzRmYkdJSTV4RVNBMys2THduV09LT2w5N2lnRDh6RS85Nkl2QWI0dnlRWFVr?= =?utf-8?B?aXlXNldOWUdTcG85djgrQzhtZ2ZmSmFTbEFyR1RTNHlNYnU4YjNBendmS1hV?= =?utf-8?B?cDF2dS9UZ0M0cm92NVozWlZGaUtReDhlRUQ4bWNUSE9QSkpJeWIvSWRmSDkw?= =?utf-8?B?YjMweHRPVDd4VUx3Nk1UdzRwSEZiRm9ReUpUNFZyWVh0a08rdEJWVzdUcld0?= =?utf-8?B?M0ViU0xRbWRMRE5rNy9UMUpyLzNFMEpDd3V6T004QTgxdHFTdkRRczN0MGVP?= =?utf-8?B?L0ZoK2JaVlB3VVQ4WjNFN0krUkVjSm5EbXJYaE55bloyQXRnbnJDR3FkQkFD?= =?utf-8?B?eDRvR2ZTZEJCU1RDZWovSlh3eHVnQXc3QnBueXRFYU5vcHp4VkpNOHNacmFx?= =?utf-8?B?R1dHMkRLL05NTnZMb3RKZFpsM20rTVJ2VWQ0NXdGdHZpaHV4OVJ0WVJkbFdw?= =?utf-8?B?ai96R09HYWtZZFVGSHl3WjZmZTMwdUpOR1FQaHJ1TTZudzVJd2NlQ2VkYTRE?= =?utf-8?B?NlN3dnhKMjN5djRZLzd4WmRncXVFQmh0MU81VUhIcDVPWlZhZWE4N3JEYjdv?= =?utf-8?B?QWg4MGptcXp6OGxZYmRjdkpicTF6S2hjRXd5WjVQTGhwRndwb1hwU29nUXFh?= =?utf-8?B?V0hqdGJDdHRwcjZIWDBrVS9KRlAzWldvNXUyUmh0dVJXS3VXaFk4T3JWSGxz?= =?utf-8?B?d1lxSHRHRndYMzFaQUVtZjhJcnk2bUZ3SDI5M1RqRkNpNnVsWWJxaGRtWm5i?= =?utf-8?B?a2ZpUXIyYVpBcUZtTElZU2o4WHNQRWRzYzhDWVFxUGhzaHI4TGxXdVlaS055?= =?utf-8?B?ck9kRmU3U0dlMGRIbmo0cTFXdjJhOHhQYWtheGVEVU9DVHBaeThsZ2p6amJF?= =?utf-8?B?NXQ4aHNTc3hPSFBrWWVEVmZ2SFdyYXJnT2l3TWZIMUlTNWtuODE0TlVGU1VN?= =?utf-8?B?UksxdGowZ0M2WnRWQlF1YkxzZllkWUJwOGszOU9YYXI0Wko5dHBZTjVzV2M5?= =?utf-8?B?THNpWmVOZWVZRldqb2xCZnBiYVhtZTN6emNSQTAxU3pFYmRQVjlyanZ5akZX?= =?utf-8?B?R0dYRi91dFFqV3ZxeCtZWll5OGR0UWtmUlVOWm00aWUvbkhPaVpSUVRZM3RB?= =?utf-8?B?NXVNbUtob3NQMFJtRmpDM2IrbmE0bnZVcHFoZGhWWS9MdURXTU5zNVlDNjBz?= =?utf-8?B?WmhPbDVNaHV2dlUrVC9SSlFNTHJqNE1EaktXNnZPcHRGSXhmNkZicW55aERM?= =?utf-8?B?MFVXdlBLYkMzcUZoZysyL1ZkblRJa3d1ZGVuSldhYU1wcmxvVnZ1TElxdVhV?= =?utf-8?B?OHJ4OWpvUDVmNW5RRW05RHNDL0E3a3ZVYUxqa3lBQ0FpN2NSQWlvUXZXb2Ew?= =?utf-8?B?RnhTVkpFWkg0eHdrZXZzOU5EN0ZibFRXNU43Vi8xdHZ0SFdOYmJDcHhlUXN2?= =?utf-8?B?bS81eDEvcXo5N3dXZmdLQ0JCWVVVaGJYKytabVZQYlRlYW00cFlIWnJSL0N0?= =?utf-8?B?L1Y1NnIvWk9sMlJnMFlkTWw3WlYzblJob1BiUVFoSVdod1hZcG5SQld1akNl?= =?utf-8?B?enQ0MU5XMWdiZEZsdXlNa3BwV2hIamI4TDZhZkJSZFR0VGFVU2pWYlNOQnd2?= =?utf-8?B?cVplemtIWThJbVNCNnYrR0Zob3lGOFhKWXAxelkyWE1rUGd3aWFheEV4Zm5T?= =?utf-8?B?WHhBdk94dDN5SzNMVWE5S0ZLQnNybXFJSG9LS0lEdlZudGQ2cTBEYkl5L2FN?= =?utf-8?B?VlNSK2tlTG5TR1ppSmVZUkZKbk96U3g5alE0S1JXcDJqcElCcnNrZnFseGpS?= =?utf-8?B?TW9PcTV0WFAzQUxuWnN6eWhXZG1UVlh1Z25wUDlsYnpOVkY3anpka211WDBK?= =?utf-8?B?bmlvMTlkUGMrc25vRFMzdzBHeFV1MUIrb1lJenNKb2hvbGJUOThFcHRQaUxu?= =?utf-8?B?cTZnVVloZ0JlMmtQMzlHTkhQdEh4MDR5SFcyR25nK1EvR2Z6YTYxU21KWXoy?= =?utf-8?B?SndhSE1nekJVSzJKQmtSZWVURlRRSEU1cHNQVE9qRWp4UlUrUGcwNkpSQzhp?= =?utf-8?B?S1E9PQ==?= X-MS-Exchange-CrossTenant-Network-Message-Id: 4d0aebc8-6473-40d5-7d47-08db9de7d232 X-MS-Exchange-CrossTenant-AuthSource: SJ0PR11MB4831.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Aug 2023 23:31:59.5694 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Kbc+gXdL4yIrFFEtKnEK5VvUm5dffwHEMAvxRwZjYjkV4dFG9UHGt4vRHdNn97+C+pfCCA4e7cI3NDx3n22P0w== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN0PR11MB6059 X-OriginatorOrg: intel.com X-Rspam-User: X-Rspamd-Server: rspam12 X-Rspamd-Queue-Id: 916031C0009 X-Stat-Signature: 7ta1ie3w4qqom66biekzz6d3f9ctaigu X-HE-Tag: 1692142324-345346 X-HE-Meta: U2FsdGVkX1+O1DB7B6U7aPWySn+tXO5dK3J/A5LFzVNwD6apB2HRrtGEkU9VRDUA8yHi5yYoS3yHeIUBRlAspiXrj37BUAyL15zRTtKNm9wzScWu/Z1YwKj7Ic4EKOnfnepVIboVQVb294aKa+ftHD7XTzB9RdVCIRzrYUujeQZ8zbDsvp12J3F+mvKgmAdVLZV/5OZF06BpMUri4YL4wNAxu88D+Nxqn8vxZAOQG5Wm9puQMaiALzUVJ7aqcDBlKsSPZSPqCaTb46hNnO3pqAa3CJIth/m0ECIThwuQR6cV4UfuHfgSrLXhAXmg3AaSEVpbwv8TvzSOJlvn2x8edNRD1jTsX2uRnBHCO/Sye+z7T2xkzGPDkzfANyVBFVtnuBgj8z8WJbpVk03YzzjgwBtz6zmnp2pG+xbCWjfsd7MFQwbpXdJXuWc6ENtMYmYdtXhYiN7b4jqn/NrkLfCWFZ0u2umkBVpAiTjoMwpiXaMIL9MbRCNXIwlmArmYY1H5BZCPrCy6WrqjmH2u7gvk0nvgS6siO9XSWKG3edDuuE5yuYG5hT4HNs0JMQ2+XKos2dZTgvuQdZDe/2zUH8wjzfZlTqj5a4eSSwZG4io6PewuL35PZPTy+l6uSsLNLNwj/gLU249xdhbQKYNIwrtNlMT2WoyOECDwZ150m5jrGIulVQpByaBBTvj3RIN0Ce4ayzOzDcmLMftvmEbSXK32z+a6LNeAPviMo/J/RuZQmbJMZhBu0gGTvhc3zUyM3CZEXmSreFqQvbHXm/MEh5+J2W/eLbdXX7PSq4Mo6AIaSbZs2W49OcF979s/ltDdFaBg84Tlp9CtlqMH5V3ykY5l8mj5b30CVmtdM4OPK8IU7DiNhpUzxOXhzOBsDX6l1e8jwtFbFIZhjeSSBxHUOCp4osyrSr18DRAfXjSpM+KoWhFTG/DtptQzePqZVYcpiReYvvl9f1Uy1FD3G+mwOIn 9mdDf+/q owGP3CZJvhPq6fSEwjmiOi0X6RnPt5zfbRudNUwkYoNs+R/HXLefjSqLqsJUypEyvXuZXCG3BLgfyUzYPTBwrCGUjA/RNCg9OzB965S5ncq3fK+XIfVKmDG6N1Fxf/xzQz2R4/yp4jD7x6no74w1JZ0BdIbYNX3nfzEGTTjip2dbv+jdIKPEuNIscNG3KogZHss0GnhDtGrc6/U734MQS3GMOE16cVyrqBKHfvsgBtb/AwZwtzYTsNeNIZi8I4aKqNBpoPDU1/bkX7jtf+fXKMOj+hOkwqYGOxi1Ui6WQKSmiXpNjZWguDFCZjARWCE6iA41ws2eU4UI+jeGRmdiWqrpcgPhentnEYLaMSFIm9CH62JV4ZP4Q/wgOFG6W9KyhUjdyGcUFVsk/G4uEH+kSu9TJYnwJjdkbsqdT0682EhRHlFqFawkBI38OWRypADGx+pHwLueli8qK8eHyWaA6EbKbGwjRu8uikuQ0crn8wrDHZRygWzBcytKlTfZvtvUD8aqe8k1JINmHXcbz2KI8zND4D0abHODD9EpIIsdR8z3+NdorMAX/t5/F/CsA1cw0u4e3lx3MUYgljybE5im/QORo7eZbry1+vbbr 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 8/15/23 21:25, Daniel Gomez wrote: > Hi Yin, > On Tue, Aug 08, 2023 at 10:09:17AM +0800, Yin Fengwei wrote: >> Commit 98b211d6415f ("madvise: convert madvise_free_pte_range() to use a >> folio") replaced the page_mapcount() with folio_mapcount() to check >> whether the folio is shared by other mapping. >> >> It's not correct for large folios. folio_mapcount() returns the total >> mapcount of large folio which is not suitable to detect whether the folio >> is shared. >> >> Use folio_estimated_sharers() which returns a estimated number of shares. >> That means it's not 100% correct. It should be OK for madvise case here. > > I'm trying to understand why it should be ok for madvise this change, so > I hope it's okay to ask you few questions. > > folio_mapcount() calculates the total maps for all the subpages of a > folio. However, the folio_estimated_sharers does it only for the first > subpage making it not true for large folios. Then, wouldn't this change > drop support for large folios? I saw David explained this very well in another mail. > > Seems like folio_entire_mapcount() is not accurate either because of it > does not inclue PTE-mapped sub-pages which I think we need here. Hence, > the folio_mapcount(). Could this be something missing in the test side? > > I tried to replicate the setup with CONFIG_TRANSPARENT_HUGEPAGE but > seems like I'm not able to do it: > > ./cow > # [INFO] detected THP size: 2048 KiB > # [INFO] detected hugetlb size: 2048 KiB > # [INFO] detected hugetlb size: 1048576 KiB > # [INFO] huge zeropage is enabled > TAP version 13 > 1..166 > # [INFO] Anonymous memory tests in private mappings > # [RUN] Basic COW after fork() ... with base page > not ok 1 MADV_NOHUGEPAGE failed > # [RUN] Basic COW after fork() ... with swapped out base page > not ok 2 MADV_NOHUGEPAGE failed > # [RUN] Basic COW after fork() ... with THP > not ok 3 MADV_HUGEPAGE failed > # [RUN] Basic COW after fork() ... with swapped-out THP > not ok 4 MADV_HUGEPAGE failed > # [RUN] Basic COW after fork() ... with PTE-mapped THP > not ok 5 MADV_HUGEPAGE failed > # [RUN] Basic COW after fork() ... with swapped-out, PTE-mapped THP > not ok 6 MADV_HUGEPAGE failed > ... Can you post the MADV_PAGEOUT and PTE-mapped THP related testing result? And I suppose swap need be enabled also for the testing. Regards Yin, Fengwei > > > Daniel >> >> User-visible effects is that the THP is skipped when user call madvise. >> But the correct behavior is THP should be split and processed then. >> >> NOTE: this change is a temporary fix to reduce the user-visible effects >> before the long term fix from David is ready. >> >> Fixes: 98b211d6415f ("madvise: convert madvise_free_pte_range() to use a folio") >> Cc: stable@vger.kernel.org >> Signed-off-by: Yin Fengwei >> Reviewed-by: Yu Zhao >> Reviewed-by: Ryan Roberts >> --- >> mm/madvise.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/mm/madvise.c b/mm/madvise.c >> index 49af35e2d99a..4dded5d27e7e 100644 >> --- a/mm/madvise.c >> +++ b/mm/madvise.c >> @@ -683,7 +683,7 @@ static int madvise_free_pte_range(pmd_t *pmd, unsigned long addr, >> if (folio_test_large(folio)) { >> int err; >> >> - if (folio_mapcount(folio) != 1) >> + if (folio_estimated_sharers(folio) != 1) >> break; >> if (!folio_trylock(folio)) >> break; >> -- >> 2.39.2 >>