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 3B47AC433F5 for ; Thu, 24 Mar 2022 14:36:08 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id B39186B0071; Thu, 24 Mar 2022 10:36:07 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id AE81F6B0073; Thu, 24 Mar 2022 10:36:07 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 93B336B0074; Thu, 24 Mar 2022 10:36:07 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (relay.hostedemail.com [64.99.140.25]) by kanga.kvack.org (Postfix) with ESMTP id 8520B6B0071 for ; Thu, 24 Mar 2022 10:36:07 -0400 (EDT) Received: from smtpin02.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id 4B1026B3 for ; Thu, 24 Mar 2022 14:36:07 +0000 (UTC) X-FDA: 79279529574.02.74EF0F1 Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on2057.outbound.protection.outlook.com [40.107.21.57]) by imf18.hostedemail.com (Postfix) with ESMTP id 71C9B1C0028 for ; Thu, 24 Mar 2022 14:36:06 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=UleTt1mxgOEmhAqa8OXf+t+KZqrVjH298BdpYuzmh/Y=; b=Ex3TxGC1zF0biZk1feOEg9pI4QFmUyS4WI0X2LF80z3JfUJD2t5MLYjSEMP9ZXMnh5aouAnL+R0ywNkes7unYweMOJIh+EuPW5vj9GqPDWKGZ/08HY40cYEUVkmUAkM62M0N/3QioEccFts6oUTu/L7nGEn2zvqsMoECKasmzYg= Received: from AS9PR06CA0246.eurprd06.prod.outlook.com (2603:10a6:20b:45f::12) by VE1PR08MB5037.eurprd08.prod.outlook.com (2603:10a6:803:110::29) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5102.16; Thu, 24 Mar 2022 14:36:02 +0000 Received: from AM5EUR03FT012.eop-EUR03.prod.protection.outlook.com (2603:10a6:20b:45f:cafe::75) by AS9PR06CA0246.outlook.office365.com (2603:10a6:20b:45f::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5102.17 via Frontend Transport; Thu, 24 Mar 2022 14:36:02 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM5EUR03FT012.mail.protection.outlook.com (10.152.16.161) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5102.18 via Frontend Transport; Thu, 24 Mar 2022 14:36:02 +0000 Received: ("Tessian outbound 18e50a6f0513:v113"); Thu, 24 Mar 2022 14:36:02 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: 07c24d8560feebca X-CR-MTA-TID: 64aa7808 Received: from be9a33b869d7.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 482BC49E-0714-4766-82B8-021AB331978F.1; Thu, 24 Mar 2022 14:35:53 +0000 Received: from EUR05-DB8-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id be9a33b869d7.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Thu, 24 Mar 2022 14:35:53 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=gUYD8cxGA/JBdRayGNKN1LaLKJtwoN0WkUBN3hNDDNVqfGMCI5slcTzRHl3Mj43X928SQTrjQ1DOiTHnSiRpMJJ5c6I2qsCCWhRh53604oTIuOjZven1nQLmhpX7UbddO0NtBoEj7mzU1IMWjnczOF/ko+IT24IITKmo6CF6+BCsi5ocmliKx2JgexU0LeWjQir9z15dHCNpdfvh6xCLmRzcXzVrIfHhMIak2eCB0Fqp2q+wc7W7i/zr9HNSENWK20vY7AtGI6i5Kh32/1AoMsS5VbFChzy8J0VYOyLKrwtOhXfdOGsQBOf7UyOvKKL4NbefiQ8hoA2GjJRp+GCGjg== 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=UleTt1mxgOEmhAqa8OXf+t+KZqrVjH298BdpYuzmh/Y=; b=ZQ0vb6b12oK4LCGB/26Yt3eUAcbhv4AHX5sbNAwob6PmTBsAMGscaATXJfeXX4ZM8LyJel9jFnVQbbdkcQgXWGEPIVZQUZv3FJFR2sZZ6zF0g4WBR/rvp5o+aMfA9RqaTXdW3CQxYUXrM1pAAbNukcntiCtuP8AZpP7A5OpKMIkQ9SNdJZqajIcBOhnSf2fPOmJQMASLBMapB8HFZeNTZsEFKSiKan8wNarYiqgdOSZYSaVh4qGPU/hv019KSsRfZQUzSlCUn2fePwcad4KpgLDXCQutq1hG+/OAZBKSNLVhuigI0Cbwf3Vg24oac+SpfKz6C4GqqwOdmrFGCQWvFg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=UleTt1mxgOEmhAqa8OXf+t+KZqrVjH298BdpYuzmh/Y=; b=Ex3TxGC1zF0biZk1feOEg9pI4QFmUyS4WI0X2LF80z3JfUJD2t5MLYjSEMP9ZXMnh5aouAnL+R0ywNkes7unYweMOJIh+EuPW5vj9GqPDWKGZ/08HY40cYEUVkmUAkM62M0N/3QioEccFts6oUTu/L7nGEn2zvqsMoECKasmzYg= Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; Received: from AS8PR08MB7028.eurprd08.prod.outlook.com (2603:10a6:20b:34f::8) by DBBPR08MB4540.eurprd08.prod.outlook.com (2603:10a6:10:c1::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5081.19; Thu, 24 Mar 2022 14:35:46 +0000 Received: from AS8PR08MB7028.eurprd08.prod.outlook.com ([fe80::bc91:3925:e9dc:a851]) by AS8PR08MB7028.eurprd08.prod.outlook.com ([fe80::bc91:3925:e9dc:a851%8]) with mapi id 15.20.5102.017; Thu, 24 Mar 2022 14:35:46 +0000 Message-ID: <2dbb5cf0-ce41-da93-9a3d-5666601f71c5@arm.com> Date: Thu, 24 Mar 2022 14:35:44 +0000 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:91.0) Gecko/20100101 Thunderbird/91.7.0 Subject: Re: [PATCH] tlb: hugetlb: Add arm64 contiguous hint awareness To: Peter Zijlstra Cc: linux-mm@kvack.org, David Hildenbrand , Anshuman Khandual , Catalin Marinas , Will Deacon , nd@arm.com References: <20220323165218.35499-1-steve.capper@arm.com> <20220324143331.GF8939@worktop.programming.kicks-ass.net> From: Steve Capper In-Reply-To: <20220324143331.GF8939@worktop.programming.kicks-ass.net> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-ClientProxiedBy: LO4P123CA0103.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:191::18) To AS8PR08MB7028.eurprd08.prod.outlook.com (2603:10a6:20b:34f::8) MIME-Version: 1.0 X-MS-Office365-Filtering-Correlation-Id: a96e27fe-2c98-4ea5-69a3-08da0da39eeb X-MS-TrafficTypeDiagnostic: DBBPR08MB4540:EE_|AM5EUR03FT012:EE_|VE1PR08MB5037:EE_ X-Microsoft-Antispam-PRVS: x-checkrecipientrouted: true NoDisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: 585Ux8uDMFvm/LWdYw5HKEj3ua4o59nTFkMqSN+808v4LcDOHVZfFI7+nFlsm+oLuyNx+Nm96xRoePGd4+ae8gi/HB+xLO9lTupUaTDmUzuNsHD+boWfa14JMj127auoA+hn3Ti/fi3eYIe6nbB+exzgYzPpa4jtrwgn9kRFv0zvlnYBN3eNNXFS6qWV85c4rM/rWyHYTbcrtLBO9OGonGe8Xw5PMoreIjex+nRkG1DIsCQhNCw1Y9V+dokn3QofqZmB2adZmnJhgUa9s9R/3UhfaoJry9K6BfXnY6nIxoY0JPF3ZGUJ6Xrqd3+NgeIk08WrjmV3ibirmWnfu8RycUuitVh2ndwu8TycafHtG2qO9xqYf1N8PIxAppxYPc1qbE1lI1nw/BVsuN/qldyfOkm669t5YT+fBP3qylWnzcqX74Rann37CdbxJ/TNSpwsYqyArUP5FPNLaMFLY6fItMIFGatS87NlR84J7UTpDhdfgjnQ9xIqUpGKUdpx/rsBSSBit2caUXxtm+coGDpa7ZKTMGyJ7t3fWL4vSOAzVxnch2vY9RI4ixXNP3KJEIIHKhSNRJ/8VisEgD76sTrAprlPxVzCW3S3SBc8CcAyGYAbA2cxO95ZFPiTkU0V/jE23IRed+PjQeR89QuHUB4rIxTpen7rch3QXfLspxF0ydq01OXZ9ByZDReXpjk+Wlvqz4fa7mrCRA6j1PZ/mKuoipU/x2nheYlnXzwW2pAczVYYG6z4XyMQ+hoUkfNCMOw8 X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:AS8PR08MB7028.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230001)(4636009)(366004)(36756003)(6512007)(508600001)(6916009)(31686004)(2616005)(54906003)(316002)(26005)(6486002)(6506007)(53546011)(186003)(2906002)(44832011)(5660300002)(8936002)(31696002)(38100700002)(66556008)(66946007)(86362001)(4326008)(8676002)(66476007)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-Transport-CrossTenantHeadersStamped: DBBPR08MB4540 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM5EUR03FT012.eop-EUR03.prod.protection.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 9e69a69d-9c26-4772-4245-08da0da39505 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: fwxwUn/2w0FSDShrohnD+z0bbvkjURYI/we6GewC5XWeB26AlGq+IfH7HQcxCupfmfhh6B/2Q4d5P5Q0B07cO3lVuyRPampG64/czs83UAmifyhAaU3ESchmb516kVocGKjGZTU10rctNBkzP6bVvwxRK+q3ypaHY48rPGSsJeE/oByEgg3KJoVXWk3owsFJf6SVLybGDm+CdIkJNmejE/U9JnGakP0WWT71fK0efkd8ggFDzm9oGl4GJh40ul3XQ2E7JxkqGjtDo33UlWnM9OqWVpt4K0FVSPiHuMxzM/W/K1kQcf86TA3wGUpO8uLke5Z9AJWHQYUpv6QG5CuaeEW0BQq+7poDsmwzqzsnVk+POzEyo2+pwMWEtmlNYf1vwXBSUlU1ksODF6YIM0xQugELXqdHr5OPgXbifaW3/WqBLmRpmLQdPYr0Ko/Vj7mQxD4petvL/FUw6bXnIbyVOUSv+fQJNIiuR7r4zHmZud+O2ixT2xMVxPt/kCHq4OAHTSV/P1NuKpGeKZvdx+KrEWP095mxINpXOy+rwokNxu+n1RqDVp8zuJCyKWiNiCIZRwZhntvUJCgrWrAOZCwU8sh+Rbtljqx3I24jX0lYwHsXkrgZ7Sxh/Yr7jfcvNX/q0Vr2l9dKQVn4sTQO8a0OW8bnQjRBNJZ1YYqMbxxs752zNZZHws27mnb8VxYTsq/5bXRQ9HzPWXmE9epQW/adNw== X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230001)(4636009)(46966006)(36840700001)(40470700004)(36756003)(356005)(81166007)(2906002)(8936002)(5660300002)(6862004)(70206006)(31686004)(8676002)(316002)(4326008)(54906003)(44832011)(40460700003)(6486002)(508600001)(31696002)(70586007)(6512007)(6506007)(53546011)(36860700001)(86362001)(186003)(336012)(47076005)(2616005)(26005)(82310400004)(43740500002);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Mar 2022 14:36:02.2581 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: a96e27fe-2c98-4ea5-69a3-08da0da39eeb X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM5EUR03FT012.eop-EUR03.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: VE1PR08MB5037 X-Stat-Signature: srxto7b9xu4ifbkkwiongz6ugkere959 Authentication-Results: imf18.hostedemail.com; dkim=pass header.d=armh.onmicrosoft.com header.s=selector2-armh-onmicrosoft-com header.b=Ex3TxGC1; dkim=pass header.d=armh.onmicrosoft.com header.s=selector2-armh-onmicrosoft-com header.b=Ex3TxGC1; spf=pass (imf18.hostedemail.com: domain of Steve.Capper@arm.com designates 40.107.21.57 as permitted sender) smtp.mailfrom=Steve.Capper@arm.com; dmarc=pass (policy=none) header.from=arm.com X-Rspam-User: X-Rspamd-Server: rspam08 X-Rspamd-Queue-Id: 71C9B1C0028 X-HE-Tag: 1648132566-264493 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 24/03/2022 14:33, Peter Zijlstra wrote: > On Wed, Mar 23, 2022 at 04:52:18PM +0000, Steve Capper wrote: > >> +#define tlb_remove_huge_tlb_entry(h, tlb, ptep, address) \ >> + do { \ >> + unsigned long _sz = huge_page_size(h); \ >> + if (_sz == CONT_PTE_SIZE) \ >> + tlb_flush_pte_range(tlb, address, _sz); \ >> + else if (_sz == PMD_SIZE) \ >> + tlb_flush_pmd_range(tlb, address, _sz); \ >> + else if (_sz == CONT_PMD_SIZE) \ >> + tlb_flush_pmd_range(tlb, address, _sz); \ >> + else if (_sz == PUD_SIZE) \ >> + tlb_flush_pud_range(tlb, address, _sz); \ >> + __tlb_remove_tlb_entry(tlb, ptep, address); \ >> + } while (0) > > > It occurs to me that perhaps this can be written like: > > unsigned long _sz = huge_page_size(h); > if (_sz >= P4D_SIZE) > tlb_flush_p4d_range(tlb, address, _sz); > else if (_sz >= PUD_SIZE) > tlb_flush_pud_range(tlb, address, _sz); > else if (_sz >= PMD_SIZE) > tlb_flush_pmd_range(tlb, address, _sz); > else > tlb_flush_pte_range(tlb, address, _sz); > __tlb_remove_tlb_entry(tlb, ptep, address); > > And then it can still be generic.. Thanks Peter, My concern with that would be the CONT_PMD_SIZE case would result in a call to tlb_flush_pte_range rather than tlb_flush_pmd_range causing some of the level parameters to be different. Would that cause an issue? Cheers, -- Steve