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 9B531C4332F for ; Thu, 8 Dec 2022 22:15:00 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 116658E0006; Thu, 8 Dec 2022 17:15:00 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 0C6AC8E0001; Thu, 8 Dec 2022 17:15:00 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id EA8DB8E0006; Thu, 8 Dec 2022 17:14:59 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id DB24D8E0001 for ; Thu, 8 Dec 2022 17:14:59 -0500 (EST) Received: from smtpin03.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id B094A160F44 for ; Thu, 8 Dec 2022 22:14:59 +0000 (UTC) X-FDA: 80220545118.03.56380FC Received: from NAM12-DM6-obe.outbound.protection.outlook.com (mail-dm6nam12on2054.outbound.protection.outlook.com [40.107.243.54]) by imf29.hostedemail.com (Postfix) with ESMTP id C6B81120012 for ; Thu, 8 Dec 2022 22:14:56 +0000 (UTC) Authentication-Results: imf29.hostedemail.com; dkim=pass header.d=Nvidia.com header.s=selector2 header.b=RMS8DeWD; spf=pass (imf29.hostedemail.com: domain of jhubbard@nvidia.com designates 40.107.243.54 as permitted sender) smtp.mailfrom=jhubbard@nvidia.com; arc=pass ("microsoft.com:s=arcselector9901:i=1"); dmarc=pass (policy=reject) header.from=nvidia.com ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1670537696; 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=psf4uNW6ODi+Ra5KQ2zddpsm88Lmp53hoG74POQ9mec=; b=t5hoBH5Sk+huL72CbWkJo7b3HTlyEyOfT1XJC/EgRYjgNruqwXwhcFTUekR+TAR4i0fEdB iJZsJVRlvU39d768MJIF+lQ2hf0ewece+1SANxQ7oTU6sXuQ5EuBc6/n24T3efJAt0dsXH O70uF7Xo9iVztX/L9ONPcnv4EY8yNZg= ARC-Authentication-Results: i=2; imf29.hostedemail.com; dkim=pass header.d=Nvidia.com header.s=selector2 header.b=RMS8DeWD; spf=pass (imf29.hostedemail.com: domain of jhubbard@nvidia.com designates 40.107.243.54 as permitted sender) smtp.mailfrom=jhubbard@nvidia.com; arc=pass ("microsoft.com:s=arcselector9901:i=1"); dmarc=pass (policy=reject) header.from=nvidia.com ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1670537696; a=rsa-sha256; cv=pass; b=2wFSjUlf0JX/ltLpi9MDMvwRPb32yOBhidBSJcBoZ7olSZFMsw7izOKTqc/kL3K4Cbu6B/ iQUNIzcHRmClDhQXAHw72n698P7jpgpXp08nrn4IYE/L9fnOveW4fQHA+DNNtMgxliiDSc Ybw9HnexJBPLNPd/MinPZWUqwSO61A0= ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=A5o/2ebltraFpPYxQU6bTdxEOR9nQF+NsNlwRPrutwPWS9Wveci79the4qcJ7LQCD+8w85DcSEdpbNLHsn2WR9KCXWt77EhA016X/G2N+XkU7eQK+m/kNxvZ5VkrKZp+cKpesK8mXW59eFWEcDGlHqybBL1dleP2rTACmg35mRCcYgoE1qS096b9Y2mtHJijP8YaB0wTS23yCxuIlJYaIIDMLKgCbViQ2urIgkecfkuw2wi61utmy1ypldjqAtB5aA7lQdoK/fF7eXDL9diecZv4R2E26IRLQYrY78gG/f/MAYOYKCpobkqU2BkyVTp7aJoYk34xrhVXJcgJxrxs9g== 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=psf4uNW6ODi+Ra5KQ2zddpsm88Lmp53hoG74POQ9mec=; b=NsZc96pNF47cpPEmHwSEGbT7X5Zkt72yNuuIux779KMLw4o5D0cpplmt+gXi5IZqzR4WkDdh6X8Fj44/FWfde6HY3RYcBZJ2HPcD/Bi/YTwcm4z1x88vfgFmjgSEhVRJVzshz7EGtADO8CxyubBW2Y3n7P3fLvvbnHyNXv2FKZuW/S/Mq2PdusD7BiKB55H0wXsulA90/v9HJLVsPwCFfw84lSUVAYfCT/JFxna9LvL+CpF06jIEe+z2wA1ncfigndSXvxgregWP8HS4PhhufcEn/s73rYbiiWjRMf0+6Jd+ddTk5rJ1W4cQq9/A1LeGPNC9eSgCEhdjkpA0x/09qw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 216.228.117.160) smtp.rcpttodomain=oracle.com smtp.mailfrom=nvidia.com; dmarc=pass (p=reject sp=reject pct=100) action=none header.from=nvidia.com; dkim=none (message not signed); arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=psf4uNW6ODi+Ra5KQ2zddpsm88Lmp53hoG74POQ9mec=; b=RMS8DeWDtTpdqLjF6Na0B/gwAv6w1CZMEc1eNNflyeKaC7Ul76zgZAPAczguj1tyv4SZTekcEkzlI3tw6A1lwM+c5ZfhvtLUyFF9Kx2aCqHBHyYVFe8UQ9wApHbutvloi2UjnTMdTJhE9EefBZ2B1up3UnjkUa7o8rAMeO3EHIxZTzpNtjFcNA8BxkCX5Rjrsf3uBue3gCWJATlc6xlUNIFFDla3F3o2C+V8A2ji+Jgo3g9oYIFxDLYbRXL+uqSr7X/Rjs8NULCHuIWqz6QzCsVeIgJB8rs6Th1Ycqp7rW0Fgomr4xQl6mxCXJlDKBSK+lYcew+xqacpk5zuA2y7Tg== Received: from DM6PR03CA0089.namprd03.prod.outlook.com (2603:10b6:5:333::22) by IA0PR12MB8376.namprd12.prod.outlook.com (2603:10b6:208:40b::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5880.14; Thu, 8 Dec 2022 22:14:54 +0000 Received: from DM6NAM11FT075.eop-nam11.prod.protection.outlook.com (2603:10b6:5:333:cafe::1) by DM6PR03CA0089.outlook.office365.com (2603:10b6:5:333::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5880.16 via Frontend Transport; Thu, 8 Dec 2022 22:14:54 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 216.228.117.160) smtp.mailfrom=nvidia.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=nvidia.com; Received-SPF: Pass (protection.outlook.com: domain of nvidia.com designates 216.228.117.160 as permitted sender) receiver=protection.outlook.com; client-ip=216.228.117.160; helo=mail.nvidia.com; pr=C Received: from mail.nvidia.com (216.228.117.160) by DM6NAM11FT075.mail.protection.outlook.com (10.13.173.42) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5901.17 via Frontend Transport; Thu, 8 Dec 2022 22:14:54 +0000 Received: from rnnvmail201.nvidia.com (10.129.68.8) by mail.nvidia.com (10.129.200.66) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.36; Thu, 8 Dec 2022 14:14:44 -0800 Received: from [10.110.48.28] (10.126.231.37) by rnnvmail201.nvidia.com (10.129.68.8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.986.36; Thu, 8 Dec 2022 14:14:43 -0800 Message-ID: <20cc2088-b66e-28d1-a529-414e82146336@nvidia.com> Date: Thu, 8 Dec 2022 14:14:43 -0800 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.5.1 Subject: Re: [PATCH mm-unstable] mm: clarify folio_set_compound_order() zero support Content-Language: en-US To: Sidhartha Kumar , Mike Kravetz , Matthew Wilcox CC: , , , , , References: <20221207223731.32784-1-sidhartha.kumar@oracle.com> <92965844-c430-8b8e-d9f1-705d7578bceb@nvidia.com> <0187f9c2-e80a-9cde-68bc-c9bdbd96b6fe@oracle.com> <2723541a-79aa-c6b5-d82c-53db76b78145@oracle.com> <36ddac45-ecd0-e2d2-e974-8c85ca503053@oracle.com> From: John Hubbard In-Reply-To: <36ddac45-ecd0-e2d2-e974-8c85ca503053@oracle.com> Content-Type: text/plain; charset="UTF-8"; format=flowed Content-Transfer-Encoding: 8bit X-Originating-IP: [10.126.231.37] X-ClientProxiedBy: rnnvmail203.nvidia.com (10.129.68.9) To rnnvmail201.nvidia.com (10.129.68.8) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM6NAM11FT075:EE_|IA0PR12MB8376:EE_ X-MS-Office365-Filtering-Correlation-Id: dae7b43d-8844-40a8-f289-08dad969a285 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: M2sypDj+wls1aZrVWiHC1Hpbtgw6GEMNfoyShF7jsqL63iUuau5uflFczc84LIWhsrSLdoVL0Qy1pVmnqAUyZ5Lo+J7O+bLpv9qSZHPVTkHtT7IeqDVLW4tstP3btHdi8kURY0huGgHo43dqAUdFcB+D+LIBOBDcIdmXe1b++We44cqqyy5W63SE9No/ug8zPR1RNpXEB5eSSuwQUUWewXHNJgg06ZxDYlrq0ncFU3CRe49gN1BefJQithsbu5lphcPGxQf6Z65LAz2ZC6d6Hs6aTfhDOB9yo8vazQIVQo26UJhBGroriH4XdS374jL/J/ooMFndkEbsc2XXDb24gfA+WMs0YWvhAawRplYER+YGeCWjdV444hPDvauJnjriBbTpZBXF61tk6oK6J0xojW1hzqFdP1kEURPNMKoelFH6EQ2/y1a2uQ/BQHOvMncG67hcFQ1A10hpzpdGlrx02lGL9V+IwNtPDg9GzWDo9aEH5Aw2YapueVqcZxPK94ERtlbIY8pLM4UoQhvW9zz071iX2KVxnNh/G9CI3lRLSCvVCowoWw/SgSfJf8UZHPB8Z5gAoZ/0LJfHagTfzqkTLsCpMMjTrFhUNZb2yw6XBZSWV2qj0tFjKe2+8TNDGCh1E7xOZpEdCISIS+0QgklCs0QSUYoHSJ33upfX1I6zThpppS2ilZaBq40b0NaO7idOEr5xarRDNFTzcZw1vlO0KdXMn5zOq0y+yZybEPwA2PI= X-Forefront-Antispam-Report: CIP:216.228.117.160;CTRY:US;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:mail.nvidia.com;PTR:dc6edge1.nvidia.com;CAT:NONE;SFS:(13230022)(4636009)(346002)(396003)(136003)(39860400002)(376002)(451199015)(46966006)(40470700004)(36840700001)(41300700001)(16526019)(5660300002)(336012)(426003)(478600001)(8936002)(47076005)(186003)(40460700003)(36756003)(7636003)(26005)(82310400005)(16576012)(316002)(110136005)(83380400001)(36860700001)(82740400003)(40480700001)(54906003)(356005)(31696002)(86362001)(70586007)(70206006)(53546011)(2616005)(2906002)(31686004)(4326008)(8676002)(43740500002);DIR:OUT;SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Dec 2022 22:14:54.6421 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: dae7b43d-8844-40a8-f289-08dad969a285 X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a;Ip=[216.228.117.160];Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: DM6NAM11FT075.eop-nam11.prod.protection.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA0PR12MB8376 X-Rspamd-Queue-Id: C6B81120012 X-Stat-Signature: 8uc1qbppw4neopidks1uzfcwmtseuuwb X-Rspam-User: X-Rspamd-Server: rspam08 X-HE-Tag: 1670537696-330141 X-HE-Meta: U2FsdGVkX1/3sSgPQXSkPIwpi1K+wgRzeCYUlt6E/gWfyFtDSMezZ0tpsvv1jtXPr+hF/rjwoqfJV6CbmfyXY7DzHHlk7pukNX1e0Qw97KVk+MtDmzyPexaGITRyYh+BbSDluOS3jCKRuoR8eA12pgDEhGNaWO6i3asXAfVw6wVgL8HrmhYJorZnhtLplu/gL+B40Ye+owCM8/wuAU7aA4rnPVmI9uedsrvCRBI1VtAlOUxt1AY1lLlFA8hHk7ahnnZhyYzd5H6a6TDHUFA+Agr4LFR7PHh9PPceIvQbSNpmg1EvUFeJLpxwMjN3bpu8H7Kp8EOTundY9kR+IK9Hxk1JciiUEYw50nLr8vjpU81ze121RmR/9Uwx3av2KeC4FrR9AzMBJDPHtLjyXEOsIXBvTM+fISC2i85XDd7bElgze6hdv8rAtpJm6cXa3Yz93bt6jsDTsYUmtDmTbqyn3litbhz8GmOzTJ4at6sUmu6ZzoPAC/ZuA1FLKPAajw6pmbEefICnGc3k6BBeHbOd7wSVvpLBMoVbCCDXzZFFZOzI/2GFFHdVVP0dXOAoVwcCAuwWEIUwIzF0O2zKcBoLMu1E096iJCt/9myXE/PRAFqoE4N4+fT3u1Vtssm3u46fz1mZ2UrE/Kf9n4A06D3ogkoElw91KzrxQp1oOr8xZvyk0yv24C0QSP2bSs8LiMpcefd0zK+ZKt3DVru7xqnxgrYwv6t/szj/r/eFq3IMvezPCK/j6UO0W14JlrPupRZj4S4ZoAKh5a+vtGMt5nwr3aILWlR2MXbbfthUo9EWHv6K/wO+yxdm+FeWSdNNjeph5xUNupa4VDRUKAIG39/13MXKg2DQZDZ0ccO6qBWZY6XrPB1Bv6k0zrY7bJS8IVSpHCD4zZLT7/75mgx38ly/ZwhEDr5UNr4nuaiMMeCyIiqE75yyb+qu2/OZ96PbB3KtLqRf9cgMhhPS071+QJ0 X5ZKOnuK 5m4hTyaPQJ4Rs4GhyvHY59t6p+g== 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 12/8/22 14:12, Sidhartha Kumar wrote: > On 12/8/22 2:01 PM, John Hubbard wrote: >> On 12/8/22 13:58, Sidhartha Kumar wrote: >>> Thanks John, Mike, Matthew, and Muchun for the feedback. >>> >>> To summarize this discussion and outline the next version of this patch, the changes I'll make include: >>> >>> 1) change the name of folio_set_compound_order() to folio_set_order() >>> 2) change the placement of this function from mm.h to mm/internal.h >>> 3) folio_set_order() will set both _folio_order and _folio_nr_pages and handle the zero order case correctly. >>> 4) remove the comment about hugetlb's specific use for zero orders >>> 5) improve the style of folio_set_order() by removing ifdefs from inside the function to doing >>> >>> #ifdef CONFIG_64BIT >>>   static inline void folio_set_order(struct folio *folio, >>>                   unsigned int order) >>>   { >>>       VM_BUG_ON_FOLIO(!folio_test_large(folio), folio); >> >> Sounds good, except for this part: why is a function named >> folio_set_order() BUG-ing on a non-large folio? The naming >> is still wrong, perhaps? >> > > This is because the _folio_nr_pages and _folio_order fields are part of the first tail page in the folio. folio_test_large returns if the folio is larger than one page which would be required for setting the fields. OK, but then as I said, the name is wrong. One can either: a) handle the non-large case, or b) rename the function to indicate that it only works on large folios. thanks, -- John Hubbard NVIDIA