From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from PH0PR06CU001.outbound.protection.outlook.com (mail-westus3azon11011015.outbound.protection.outlook.com [40.107.208.15]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 2BB753E4500 for ; Fri, 26 Jun 2026 09:38:32 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.208.15 ARC-Seal:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1782466718; cv=fail; b=mIgMVo7Vk0mGwLVhElts7RHjJ1VADyMv0WdAHr/1VqSUuLL0OQ+rAkNbbOktXXY/Ya7PB0yW2pU6BZxXnxigVMgw3YtP4FLWOsJ5hLMrnHBE/THpBOMut/oKrrWrg/NTCfXVND1iWWpBP6SS+VSt4cy+abBAbS8O5FyePhpj8Gg= ARC-Message-Signature:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1782466718; c=relaxed/simple; bh=8ROrisaQr0TjSzp5EJz4ADIq7GRDepnincdomD8ZVd8=; h=From:Date:Subject:MIME-Version:Content-Type:Message-ID:References: In-Reply-To:To:CC; b=qPXzt030uYmIDcTe2xDXiN6R/PNQMXwW5H3NHkxFhDOP1TW8nQIJLkD8pY9f2aK15NPTVRYiVhXvUB6csxmuBlu/Jx3vv614fsx/BJ9wznnNVOD6Lvr/Lm9612iqk8sAEu64mgaVfswdBP13jTZ1O+1H+h2LvlR1Zp+ks4Eny18= ARC-Authentication-Results:i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=amd.com; spf=fail smtp.mailfrom=amd.com; dkim=pass (1024-bit key) header.d=amd.com header.i=@amd.com header.b=r9bAPCeR; arc=fail smtp.client-ip=40.107.208.15 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=amd.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=amd.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=amd.com header.i=@amd.com header.b="r9bAPCeR" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=CFCsr9QXpXSfbSvqGQcppRRCqR7LsULPayxvl7r7oVUm/sLONi055VPZOOIin/hCm6waHekMwQ4xBdFk2Z566BXiSKwN3GxnIQJiFNARgNJtwWJ72SHVYBZRFj6y9C0JztySZafsDkcXEmocxYHQnfezcgcTkPvdqXgqwfgHcKL3TsK3T8mzIHfo7TAMYNggTEN+jTySlq3xaatnbLPqbKMg1derScBsCg9lA4isc6SJ8hJWfklqce3TE3E1ODafBpi3KWmuCI02Nz1+wX1spp0JJUsXPEHl7XJzV4X9qzGfV6CUD15yB16OXbPT/35kuRKwAVpLaKblMoASvMSldA== 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=QuVFZHD/pwtYuPWVU4MCSuRcEIifU50cueE6Fy8QIz4=; b=thVKmnIIY7MRQvRCrqIQceVARBw8WubbTU0d2wUHnebkV9jhD5UQ6JWs38FBFbOrw2vHfojOEO/ER7WoauAd3XZO9HGnN6SHoXt2040bU+IhDYMig9ydu6bfkqbO3fn2hoJYpSJTt8w0SLXPy30OfSBix1zq1IMzZdW2UXjsrF0w8hguNDzc1nT+JEWQd3bW6Q8jT9ej85Q9E9HDkao14S/HpbZKGv7QITXiedE+joKxhUmIuVVA3Fx7Ys+4nO/LJQv7BbBrc1ubX63C6fS3aZFaaD+d+gnW6DioiFqEbUbiP1RL7UKpScTT50c4mc+2nkYtHCikGdLaPW/in5NG8w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=sk.com smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=QuVFZHD/pwtYuPWVU4MCSuRcEIifU50cueE6Fy8QIz4=; b=r9bAPCeRcUTz+xkpDcpP/ahHHLFR3KqnalrRQn+Z9NgrxGPmHNXJLzMAx91bbtpc16z//hW0oanmqSSXgOx8fimFBHqhnc9rBBOYZujuM9WhHlPGkImeVgJwm5PoHLrVjTPPMPKlwe1StoyEHGvVzZBfvO+N3cxiQs1axiDeY84= Received: from CY5PR17CA0055.namprd17.prod.outlook.com (2603:10b6:930:12::26) by DS0PR12MB7777.namprd12.prod.outlook.com (2603:10b6:8:153::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.139.20; Fri, 26 Jun 2026 09:38:26 +0000 Received: from CH1PEPF0000AD77.namprd04.prod.outlook.com (2603:10b6:930:12:cafe::28) by CY5PR17CA0055.outlook.office365.com (2603:10b6:930:12::26) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.21.159.16 via Frontend Transport; Fri, 26 Jun 2026 09:38:26 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; Received-SPF: Pass (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=satlexmb07.amd.com; pr=C Received: from satlexmb07.amd.com (165.204.84.17) by CH1PEPF0000AD77.mail.protection.outlook.com (10.167.244.55) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.181.6 via Frontend Transport; Fri, 26 Jun 2026 09:38:26 +0000 Received: from [127.0.1.1] (10.180.168.240) by satlexmb07.amd.com (10.181.42.216) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.2562.41; Fri, 26 Jun 2026 04:38:21 -0500 From: Shivank Garg Date: Fri, 26 Jun 2026 09:37:50 +0000 Subject: [PATCH 3/3] mm/migrate: use migrate_info field instead of private Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Message-ID: <20260626-migrate-cleanups-prep-v1-3-a95933af7619@amd.com> References: <20260626-migrate-cleanups-prep-v1-0-a95933af7619@amd.com> In-Reply-To: <20260626-migrate-cleanups-prep-v1-0-a95933af7619@amd.com> To: Andrew Morton , David Hildenbrand , Zi Yan , Matthew Brost , Joshua Hahn , Rakie Kim , Byungchul Park , Gregory Price , Ying Huang , "Alistair Popple" , Lorenzo Stoakes , "Liam R. Howlett" , Vlastimil Babka , "Mike Rapoport" , Suren Baghdasaryan , "Michal Hocko" CC: , , Shivank Garg , Jonathan Cameron X-Mailer: b4 0.15-dev X-Developer-Signature: v=1; a=ed25519-sha256; t=1782466686; l=2592; i=shivankg@amd.com; s=20260518; h=from:subject:message-id; bh=8ROrisaQr0TjSzp5EJz4ADIq7GRDepnincdomD8ZVd8=; b=e8NrjdwAOdHT7CKKZ7LXWNoyt0VERPWgoUHI6Dq5suJAXJ17hioYJNTl8boRHfdngbQ4RjJ1A EMfXyY4uf9TAl4ML7gG21H2saynKmHW3f+k6ojvQIoRKUNsdOvJc5nD X-Developer-Key: i=shivankg@amd.com; a=ed25519; pk=2l2QGTeXuGkZTtfmx0nPQU8iFZfjYmX/ymMojitevx4= X-ClientProxiedBy: satlexmb08.amd.com (10.181.42.217) To satlexmb07.amd.com (10.181.42.216) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CH1PEPF0000AD77:EE_|DS0PR12MB7777:EE_ X-MS-Office365-Filtering-Correlation-Id: 6d811c94-793b-469f-d7b2-08ded366ac61 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|36860700016|7416014|23010399003|82310400026|376014|11063799006|56012099006|22082099003|18002099003|921020; X-Microsoft-Antispam-Message-Info: baRPJdsaXYXh03p/Q6x4HPiMfW97rpp5a97svLesyB2bKyUoCXQZ/mVnQ0LEIoUh1egYbPlRYdj4cnvxD5kEvurZh90YgpI8huJIBUAC5fl36o9DOS7d+vbmJlAB7tjuAy8mEohNSCRGfy8ffTDz8lf67W+JxxCpJUG9L9dSiNUkxpHKBr2T4Z4doVDDQaLTKmjNzvn7QpXzKX4VkmlkPsqQTN/2lL1eRk+xiG9rmaHmYXcY3UOmHZ2ofmRijlpqCAO1e3pI07GRr/DYMvTbx5NEWj7M6fwOFtEw/pqkBBXV0hyhbS0wzKNvl3izxveympt8ZyWSPIBs6BTi89I2izVtN/9LpDoFI2YngZfkKJoSMMEZRSP615yQgmq/AC7b+wpOYtdO6bpUlhQOE0UUuQhUNyin3anABzMcUXGzfoGxCdogYPF1XZ/QK81Vv6zB2mppgITw/swTvWJR7/PfHMqvupV7z/DrA00k+LBB9WxiY5Cnj6ea5KXkuvfNhKVWorftzSFsDNTclegwM5miLw5VgB8/dEl8VlyyAsMR2Kiv9d5KWp9SN4E1aZExPo8xgvpXJxvSJMWxQ2hRpd5gvPd6dLXXQm32yQ9r5GCdpdyiC57yOXD9FXxAXgR3pC18f/h6WRzu0aZGWZCBbFyerIfxqUYYm1/z5zFyF9RxTtmX+Fu8cKgASN9Ob6ZjqKOp7d8VnNxiypV/6M1P9vgo14OlE+rpY3LaMsBr0icJHhGpIh7QDaNXVytBPA+vWRFR X-Forefront-Antispam-Report: CIP:165.204.84.17;CTRY:US;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:satlexmb07.amd.com;PTR:InfoDomainNonexistent;CAT:NONE;SFS:(13230040)(1800799024)(36860700016)(7416014)(23010399003)(82310400026)(376014)(11063799006)(56012099006)(22082099003)(18002099003)(921020);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: YGyc/6QRh6Sokl8QMmxqpwn5ob4/iJJETa2fXBrUHRs2p6abb695A4HO2Td50NUbMYIzWr82m50yKuKGFrQ/SlvIn0jH9p4EelavWVj5atrDMlMvGfsgpYLtGHPscn4zjWxb6LtdHeVrRxKscJiPUC+LRr7Jh4p2qEByM9La55x/zILjCTSi+WwC/TvHQHwzLo644RXLr2VS5CGn2iYbtCKaQMBGv3rfhwob3kwMlgFC9kFcpy2TYXVbqhrkGavLLFOHtihAKWWSv4EuNXCbhEOm7zutTcceQwInA5g4JzF+cdt+XG8DBkyfHCAlsx9/0H9lw8Ww9I/ySDz3Nc4WDWaFgwj7928Z6q8J8mXMO+BG4gFtoj54sQTmKjnaI+snyctG+z5NCT41aACj/nDcrwTx8g+9t5hr/eJYJWRaCdRPiL+CNRuRSW9Xh+wp10h+ X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Jun 2026 09:38:26.4854 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 6d811c94-793b-469f-d7b2-08ded366ac61 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.17];Helo=[satlexmb07.amd.com] X-MS-Exchange-CrossTenant-AuthSource: CH1PEPF0000AD77.namprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS0PR12MB7777 Add an unsigned long migrate_info member to the struct folio union and use it to store migration state (anon_vma pointer and FOLIO_WAS_* markers) instead of using folio->private. While at it, switch to bitwise OR. No functional change. Suggested-by: David Hildenbrand Reviewed-by: Jonathan Cameron Acked-by: David Hildenbrand (Arm) Reviewed-by: Huang Ying Signed-off-by: Shivank Garg --- include/linux/mm_types.h | 1 + mm/migrate.c | 14 +++++++------- 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/include/linux/mm_types.h b/include/linux/mm_types.h index b18c2b2e7d2c..ae9bca4eda5c 100644 --- a/include/linux/mm_types.h +++ b/include/linux/mm_types.h @@ -427,6 +427,7 @@ struct folio { union { void *private; swp_entry_t swap; + unsigned long migrate_info; }; atomic_t _mapcount; atomic_t _refcount; diff --git a/mm/migrate.c b/mm/migrate.c index 84b4c24f9dac..7a83032a14b5 100644 --- a/mm/migrate.c +++ b/mm/migrate.c @@ -1130,7 +1130,7 @@ static int move_to_new_folio(struct folio *dst, struct folio *src, } /* - * To record some information during migration, we use unused private + * To record some information during migration, we use the migrate_info * field of struct folio of the newly allocated destination folio. * This is safe because nobody is using it except us. */ @@ -1143,17 +1143,17 @@ enum { static void __migrate_folio_record(struct folio *dst, int old_folio_state, struct anon_vma *anon_vma) { - dst->private = (void *)anon_vma + old_folio_state; + dst->migrate_info = (unsigned long)anon_vma | old_folio_state; } static void __migrate_folio_extract(struct folio *dst, int *old_folio_state, struct anon_vma **anon_vmap) { - unsigned long private = (unsigned long)dst->private; + unsigned long info = dst->migrate_info; - *anon_vmap = (struct anon_vma *)(private & ~FOLIO_OLD_STATES); - *old_folio_state = private & FOLIO_OLD_STATES; - dst->private = NULL; + *anon_vmap = (struct anon_vma *)(info & ~FOLIO_OLD_STATES); + *old_folio_state = info & FOLIO_OLD_STATES; + dst->migrate_info = 0; } /* Restore the source folio to the original state upon failure */ @@ -1214,7 +1214,7 @@ static int migrate_folio_unmap(new_folio_t get_new_folio, return -ENOMEM; *dstp = dst; - dst->private = NULL; + dst->migrate_info = 0; if (!folio_trylock(src)) { if (mode == MIGRATE_ASYNC) -- 2.43.0