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 3559BD18159 for ; Tue, 15 Oct 2024 00:03:51 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id BF3A66B0085; Mon, 14 Oct 2024 20:03:50 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id BCAAE6B0088; Mon, 14 Oct 2024 20:03:50 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id A6B406B0089; Mon, 14 Oct 2024 20:03:50 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id 877E76B0085 for ; Mon, 14 Oct 2024 20:03:50 -0400 (EDT) Received: from smtpin27.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 257828137D for ; Tue, 15 Oct 2024 00:03:43 +0000 (UTC) X-FDA: 82673887968.27.E243C1F Received: from NAM10-BN7-obe.outbound.protection.outlook.com (mail-bn7nam10on2058.outbound.protection.outlook.com [40.107.92.58]) by imf02.hostedemail.com (Postfix) with ESMTP id 5F45580009 for ; Tue, 15 Oct 2024 00:03:34 +0000 (UTC) Authentication-Results: imf02.hostedemail.com; dkim=pass header.d=Nvidia.com header.s=selector2 header.b="Ym7xCBY/"; spf=pass (imf02.hostedemail.com: domain of jhubbard@nvidia.com designates 40.107.92.58 as permitted sender) smtp.mailfrom=jhubbard@nvidia.com; arc=pass ("microsoft.com:s=arcselector10001: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=1728950580; 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=DOYk+A0yxMFrElprFSHo5TYz662LnvMMrfhmUsW0Ng4=; b=pVjzh9HIhufDDm/rZwY3CvPW5n4px4TayU0Fw5UKcZRQ99rZWmgF4O9xMgAxnQUjr1iRA8 RJJpFmeIUtm5QnpFglVGMe6SB5SaQWnc2IIxCny9nvgNR+KGMlrRzTsRRZKTKoxNb0Q/t+ WwLghHSKDWKiN4XXgJgOAZKQypDhHnc= ARC-Authentication-Results: i=2; imf02.hostedemail.com; dkim=pass header.d=Nvidia.com header.s=selector2 header.b="Ym7xCBY/"; spf=pass (imf02.hostedemail.com: domain of jhubbard@nvidia.com designates 40.107.92.58 as permitted sender) smtp.mailfrom=jhubbard@nvidia.com; arc=pass ("microsoft.com:s=arcselector10001:i=1"); dmarc=pass (policy=reject) header.from=nvidia.com ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1728950580; a=rsa-sha256; cv=pass; b=8DM3FEjA2IZ5jlZBolGHYNGvP2+gMFXBFL0FJYOjCvpxxikBWCDJFlzKTT+tDIdI0Au+/W Eh5vr6fYiOG2hpo/026tWk0Yv7/d3yzlRq0TkQD1alvC6TAz8NUhF3RzjVESjh8uzyxem1 2RcxiCF5CT91GOyv9vT7zEM1JEJUQIc= ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=baaVS2BrVA0dDCrUTkQS3yAmQ1/Swc752/5D1srQ/bG4EvHvdUr5QOvG9HLJ+KAiYUPoVYq5eSriH8vpWobQuVAL/6QVPiWDTnQqXDtIOoVQUG+IlqY53S6ScLHWu/6SFsveku8kIfd7rAuCJKVwcSik/Wwd2lWhhSj6zMGeKTp9Pp5zhqRmhnw7WhGbqXVZoxd/XNpJ3Noa0ukBOOb3Fjk+KJc6o7tt+G+M8i5IJjbef/Y/HwPbX927W5BhKeGPJBJz8LoxeKLYP9/dhXD6+U8UaNDrCtfeGY4ss7OUteGPRCnVz8z3YK9LB+Vtlzes7teDHb2xvdHN3hl5qETtOw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; 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=DOYk+A0yxMFrElprFSHo5TYz662LnvMMrfhmUsW0Ng4=; b=Xx3Ak9sLER8JJzLUCTsikTKCPPtOzjKBf7zRbX05RHVpCZKj7Dfq8QMvrQZt902C0cwT8+v8ypayjXuGfXI2oVdQdrLLNzgY/f3E6DoczWnEOi2uD8/+5zZ1F7JhBbTLgS2NxhTNyanX/nUzqIwAVELNJPof99jLP3onnGlsdhMwxOgsiyK29sZRI4pNO1tIReD2e0d+gUcxsfiQk3x+aKjcqzpAuex0u+WBNOPeKG4/yika0v6NX1KYWKM3Afp7MEaQ7/xqqVzrdznAiBseWQk+KSLZEL1o7EatcGBz90WuyVGlIglI03ovD+P8lWkbe99uPlsDnclbdDRS9aQqFg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 216.228.117.160) smtp.rcpttodomain=google.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 (0) 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=DOYk+A0yxMFrElprFSHo5TYz662LnvMMrfhmUsW0Ng4=; b=Ym7xCBY/Bat9IFIy0FHtTaFx1+E/3HaJFrRxem5czFjhHFsN+EQFMk41n0NOnW/jTq0TLAZswJdr+FBv3BphEoPHjiyMt5zcm7a7y6M9zfJMQ24BUkDwEnhpR9MOOE0NFLajEaE3Rgzbb/myLhh3jy3eFVheZIvUkQ0P8MRFRsDK0BwpCEhBrTPKi2R+SNcpehgcmHL5lWRSQOlhAUbyTNgfGQufrY2irTTXedIouowjmXfFrQN0QTxanvvM+oQ4Rqo3hIGBZ7V/2NM7c6OrQGggCCtXHnIuqnhm/ek47WO0uIzrA2sekXmzxLaAQ80j9P6lZ31DuAhqS/4N2JoiBg== Received: from MW4P222CA0010.NAMP222.PROD.OUTLOOK.COM (2603:10b6:303:114::15) by DS7PR12MB5909.namprd12.prod.outlook.com (2603:10b6:8:7a::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8048.27; Tue, 15 Oct 2024 00:03:43 +0000 Received: from MWH0EPF000A6733.namprd04.prod.outlook.com (2603:10b6:303:114:cafe::5e) by MW4P222CA0010.outlook.office365.com (2603:10b6:303:114::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8048.27 via Frontend Transport; Tue, 15 Oct 2024 00:03:42 +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 MWH0EPF000A6733.mail.protection.outlook.com (10.167.249.25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8069.17 via Frontend Transport; Tue, 15 Oct 2024 00:03:42 +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.1544.4; Mon, 14 Oct 2024 17:03:34 -0700 Received: from [10.110.48.28] (10.126.231.35) 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.1544.4; Mon, 14 Oct 2024 17:03:32 -0700 Message-ID: Date: Mon, 14 Oct 2024 17:03:32 -0700 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v3 5/5] alloc_tag: config to store page allocation tag refs in page flags To: Yosry Ahmed CC: Suren Baghdasaryan , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , References: <20241014203646.1952505-1-surenb@google.com> <20241014203646.1952505-6-surenb@google.com> Content-Language: en-US From: John Hubbard In-Reply-To: Content-Type: text/plain; charset="UTF-8"; format=flowed Content-Transfer-Encoding: 8bit X-Originating-IP: [10.126.231.35] X-ClientProxiedBy: rnnvmail201.nvidia.com (10.129.68.8) To rnnvmail201.nvidia.com (10.129.68.8) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: MWH0EPF000A6733:EE_|DS7PR12MB5909:EE_ X-MS-Office365-Filtering-Correlation-Id: 0e7735e6-5132-48d5-bd42-08dcecacd4bf X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|376014|7416014|36860700013|82310400026; X-Microsoft-Antispam-Message-Info: =?utf-8?B?TEJtTjJkMTMrRE9kczhIb2M0dEhEUmpCRU01Vks3eFRlZG04dk9QTzZybnMy?= =?utf-8?B?WjdicThqWUhRWEhyUlNVSWdBREZKT1lUcnNDRGM0RkVkNkpFTUk0UlMvdjdr?= =?utf-8?B?SWJxb292THFjdG1mdVVDazVLQ3BxRS9HamFiRmk3SXY3TWtTUjZpcEcwSGZN?= =?utf-8?B?SHdzRkswaHFrYTdsM01CK2ZmS0N5eFJ1N1pTWktwaXBkT2FCTWxqWlptdWQr?= =?utf-8?B?RjZra0dKZnNvSExhTGpVekVrTyt1eHhTbjlndXpkNnI1YUMxdVlySklua1By?= =?utf-8?B?TG1uZ2VCK0RjY29ZU0o4dzhid1MyTXJESmZEeFFCZ0JheHJwMFJ6eE1DVVJM?= =?utf-8?B?QTQvR0UxZnhqN1EvNnY4NXlIRW1uMFFnZmFmak9VOHhHTnlmbkdUalI4TlEx?= =?utf-8?B?NE4xYlpOMGNqdzZpWG1ORUdiV3BMNDEvellsblE0L2JwVHRjeityNlZTcXQ3?= =?utf-8?B?cnYveitCZ1pyOE1BMWk2eG5qVi9SK0lKL1pzUStZb2JiTVQzRDk2WnRUc1pK?= =?utf-8?B?VnN1MjI5bjd1UFVDLzVZN0R3STBYbVU0bkNEZjBvZTVvYldiVi96TEplNmpU?= =?utf-8?B?Sk9WazErUEt4UkZiMFE3NHFOeDRGMGFkWEcxdmZmdWZrK292c3pDQjR5YzV0?= =?utf-8?B?RHBnay90V1BpUWJRR054NzhQaW5PWjFTenQxYm5KZkl3eThjMVV1U2JUMDVM?= =?utf-8?B?UnFTMnBFSW1yZkFOOHVML3JDNk5VZTAvL2VCZDBqMXJldGhpQkhORXp1b3VS?= =?utf-8?B?ckhuWjE3Yk9WY2tTZVhKTkEzYVM4dlJMdm9mSHczNDNMT0VydStjeGdWQ3Rj?= =?utf-8?B?YkF5QzZITnB3RFYvQkc2VGo5SXF4a1VZNFdybStwcTNVTVFKaHlOQzZiZ3ZP?= =?utf-8?B?RUF4QmhYZTlFYTNZWnBnajlXTmFoTHkyaDArUmlmY3Y5TE94ZFFRNkN5QXNw?= =?utf-8?B?SXVQakVJVXBZY1c5Y0w0UmtZSWtpUkR6VmNVRkg3enN1QkpQMGlrS1pMMGl5?= =?utf-8?B?QzBwZ1N3VVlJYXRHZklpWE9IbmlUNXlMVHp0Y3Z1Y1g1cjlyZUJETHFtNXU3?= =?utf-8?B?MWl6Mm1nTElSM3EyLzhteDk3WnM1dml4RnpraGtSUVVoQ3FOOCtJd1o3dHJF?= =?utf-8?B?b1hoMmxnRG5TYzQwc3dsUXREeEU3VU5vVGtZUlFXSjY3eTZ1aWp5dWVTdWdn?= =?utf-8?B?T09pVU9kMGhqck43UGhLa1ZzenZSYkRZck9pN2RZZmdBQnhseWpxekRRNUVU?= =?utf-8?B?SW82NXh6V2J5MzUvOVNzekJ2QjJmQUZ3ZXFTY0R1VGlVUU52ZVo2NEVJY09H?= =?utf-8?B?M3hBRFI2b2gxZ2Vwd1VMd2dTMWd3MGtyRDE1YXJOVzNOWUxHS1JZa0hlUTRo?= =?utf-8?B?MWlHbXRsOE9jdFJoQXN5OHBVZTdINTNSa2d4cEkvWHlyaUFPaUpWNzRWeVI0?= =?utf-8?B?SzZWZURmY0ZOZVRXdlpnOUtmQ3hGUWJSajF1bkUvb3NaSDNUdlZRcEN3M3g5?= =?utf-8?B?Y1ZBcCtwUUUwZjNiL01pL3lIcHJGNm53TGF0eEtMeGxQSnFEd1VNWHN2bjY2?= =?utf-8?B?SExzZnJaZHh0eFNKalZOSU8zOXhIMHE1Z2lGSE1URlpTNTZ2UFIyMHpCekZO?= =?utf-8?B?QXRCbHVKQkxxdnMwQ2kzMkkwY29sUVZsbC9QaHVtc25jSWlHa011RDlOTE9I?= =?utf-8?B?Uk02UWtJMjRHYW96N3lWc2s2ZFZUazlSYmdxbk1JbDA4Yk0zSDB4akpNTnh5?= =?utf-8?B?cWJidUdjTERxc2RXTThkNVBrNjI3bE1qQ29JR3BxQ0FQamVyenowNVFYN0lN?= =?utf-8?B?eFNZQ0oxaEVhQklDc1RDc1ZXWjZpQURkSi9WWmJPSW9lRE9laGVsbFhpczR5?= =?utf-8?Q?eIEU59puheoEl?= 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:(13230040)(1800799024)(376014)(7416014)(36860700013)(82310400026);DIR:OUT;SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Oct 2024 00:03:42.7008 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 0e7735e6-5132-48d5-bd42-08dcecacd4bf 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: MWH0EPF000A6733.namprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR12MB5909 X-Rspam-User: X-Stat-Signature: k677rpumowef3trgz59bih6xjm834w16 X-Rspamd-Queue-Id: 5F45580009 X-Rspamd-Server: rspam11 X-HE-Tag: 1728950614-682269 X-HE-Meta: U2FsdGVkX1/NScO3NN5XpfJG3IO04IqJVkVs96IHljJdOG+419evjOV5l3f5taUHfa77mveiUSMX2uQpatqlzK0m21b3IMiwOUIve+CUGGby/wsjZ8DuQoCGDYugW0+Hmj+nRaN/VjOeYb+rpaHGerwu4JSGAalkzwh/mENuz2fB792xkcuDvA6y94MTfYFe4WgprLhU2CSosptQaxRNgbDDbPoOqmC98+RnOXfwsDbn9cBmaDBGuJZEmxLgNK45WNWBKHygriirVdb1lKlXzBuHVq+aDMCIUk0bn/vk6z7ZUWNwyvspyTjXP0dbgo6+MfFrd0Oz5hWyiJu5GiPj/+RjCBIDjuZmsjmYR6WBhodV1j4bzppFX4rZxfr82mFarfG8JJSqxOMwm8ZN9Ci/+TY5lSvdQ0uLobspCrxqQ4gZNafuWrg8iFQwoEhpUsfWN/khaZKBrcznVtgtQ9ErfiW8qKPqV0F8jN6O90ZBl6MHGq//qHlI1/WPU/yeqStLQBVmFObPdCRWJCSlmm7q6IEal3DXv7SUJRVq3VgmLhQPV+XLXZdYPXuNKS4r4K7RjjF4iN2LNFRIyA2oA4d14/aOUWa484Z0X6uG+OmCcPyEWntYX11A5EW352hb9vt6FZRGnCacudpPw/XeE0ZZpmpOddd5EeAkx8eVnJMEpoe95+GE/kFsmANIloYu6jwPseK4HK+pXuCmOu8jPYh37QMlHL8uYIpf1MExtkSQ8ywzDXSr0/4RUQanBiEG6uUKKV9vLhQ5GluWtrXXLQaMKcX7GxQ+CcV+8/cu7+/hLhFUOiJ0QlerDbyfgdiQ2J7Q5+6fI5QBRyKCPjAbjZ7+RWGB+2wRl4v/FXpiS+sdWw8QJiK22madSxYBeig5y7r56cUB8HnBJvGi7+yyVlKsrRtqpsd2u1FOQ5O0MzJXWT9eIb07WuVO+V8yucOQ9mBEqu96MqPIqidyu7fTpdI yPzMzJFP dw9P5x7Sy/75sECKBOzcCldQQsp/jGQUPHwvEVoDJulnNXirzhoqBElis9w4rEdgwEav6qBux0nSm4998/8QJyBygm8T64QTnG0Am5o7Nbtd6jhCSnyxffg5I50bnGqkYT6I2uTdMuzJ3d2lrGDC5+w4D+sli3X7w9ef71snnuC9K7JlPxNoHFMZWLbPBwZHmNocA0vXhJYhlnxiewYCZu+Xq+WRQBVH4GHvYIKZo2VMCaRnia9t/f0kt5Qw4UrWFsXn6e6LSPDUr32Q7bfWjrXoSdDNBkxRN6zyA/CBaiLfDFUP/JWhFUp3qkAmTygDc+wOjNcNMLTUSI9vXDbVAH+Ni0237hmFmnPk0joahgr2oFlEEDiwOo3n9xSJnQsBtt8HrlhIPQwf3eid7j2OrKRN78DChOCkgtxXb6Ldf3bO9MXr/G6QQCzD55lCUad/n58fFDoW1BcdxBRC5WordVpOzqKh6enTM6Spi7ts2PSBvdP2YPMaNAZ/cEg+ZETZrnXhi/4LqENgBxETB62FkcpUoiw6RHHGSlqrW 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: On 10/14/24 4:56 PM, Yosry Ahmed wrote: > On Mon, Oct 14, 2024 at 4:53 PM John Hubbard wrote: >> >> On 10/14/24 4:48 PM, Yosry Ahmed wrote: >>> On Mon, Oct 14, 2024 at 1:37 PM Suren Baghdasaryan wrote: >>>> >>>> Add CONFIG_PGALLOC_TAG_USE_PAGEFLAGS to store allocation tag >>>> references directly in the page flags. This eliminates memory >>>> overhead caused by page_ext and results in better performance >>>> for page allocations. >>>> If the number of available page flag bits is insufficient to >>>> address all kernel allocations, profiling falls back to using >>>> page extensions with an appropriate warning to disable this >>>> config. >>>> If dynamically loaded modules add enough tags that they can't >>>> be addressed anymore with available page flag bits, memory >>>> profiling gets disabled and a warning is issued. >>> >>> Just curious, why do we need a config option? If there are enough bits >>> in page flags, why not use them automatically or fallback to page_ext >>> otherwise? >> >> Or better yet, *always* fall back to page_ext, thus leaving the >> scarce and valuable page flags available for other features? >> >> Sorry Suren, to keep coming back to this suggestion, I know >> I'm driving you crazy here! But I just keep thinking it through >> and failing to see why this feature deserves to consume so >> many page flags. > > I think we already always use page_ext today. My understanding is that > the purpose of this series is to give the option to avoid using > page_ext if there are enough unused page flags anyway, which reduces > memory waste and improves performance. > > My question is just why not have that be the default behavior with a > config option, use page flags if there are enough unused bits, > otherwise use page_ext. I agree that if you're going to implement this feature at all, then keying off of CONFIG_MEM_ALLOC_PROFILING seems sufficient, and no need to add CONFIG_PGALLOC_TAG_USE_PAGEFLAGS on top of that. thanks, -- John Hubbard