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 D95FFE77197 for ; Thu, 9 Jan 2025 17:00:37 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 452876B0085; Thu, 9 Jan 2025 12:00:37 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 4021B6B0088; Thu, 9 Jan 2025 12:00:37 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 255BA6B0089; Thu, 9 Jan 2025 12:00:37 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id 0744E6B0085 for ; Thu, 9 Jan 2025 12:00:37 -0500 (EST) Received: from smtpin19.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id 7AD331202BB for ; Thu, 9 Jan 2025 17:00:36 +0000 (UTC) X-FDA: 82988527272.19.8222702 Received: from NAM02-DM3-obe.outbound.protection.outlook.com (mail-dm3nam02on2111.outbound.protection.outlook.com [40.107.95.111]) by imf29.hostedemail.com (Postfix) with ESMTP id 5E817120022 for ; Thu, 9 Jan 2025 17:00:33 +0000 (UTC) Authentication-Results: imf29.hostedemail.com; dkim=pass header.d=os.amperecomputing.com header.s=selector2 header.b=E56DXOPN; spf=pass (imf29.hostedemail.com: domain of yang@os.amperecomputing.com designates 40.107.95.111 as permitted sender) smtp.mailfrom=yang@os.amperecomputing.com; arc=pass ("microsoft.com:s=arcselector10001:i=1"); dmarc=pass (policy=quarantine) header.from=amperecomputing.com ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1736442033; 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=QiyXpmzIak3NaquUEvoYbPA3y/jW4LujZj6STww/FT0=; b=dNkMu/rEmgL8QYsg9Q2c3bjzK5faVGdkQIMmQ47lwj3/nFBVy0oVB8yFT1NjA1761B4Mad gCpxAb/9409WUGT0OWHdspWTmfgSxElFQV8IigSWzBWaYNNZxBVgblIsmVferzQMvLSfH9 7W20uifXKdru2btDwKnqkxuccHHGGuw= ARC-Authentication-Results: i=2; imf29.hostedemail.com; dkim=pass header.d=os.amperecomputing.com header.s=selector2 header.b=E56DXOPN; spf=pass (imf29.hostedemail.com: domain of yang@os.amperecomputing.com designates 40.107.95.111 as permitted sender) smtp.mailfrom=yang@os.amperecomputing.com; arc=pass ("microsoft.com:s=arcselector10001:i=1"); dmarc=pass (policy=quarantine) header.from=amperecomputing.com ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1736442033; a=rsa-sha256; cv=pass; b=2c9Qb7MSWGXSV8AXb0+nRqVPOzlfcOVRTGuycPZKR0m2qB9iixgclgLXWej+57kdUSElbv fhM1oP347JKUz0PlRwdF5TVfGMMPPLsmbfH0VMBV9w87Ligs+l0o3lNI5H7Pk72cRDPqaz qvG/6stfhzjqRprNjBVjuifWKfKCz2w= ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=sN6J/ozFGQxyJYPHCDUDSDQuE1kixV4W6WTFjwqSC4Yp+6btxvLZzjg3QbK1Z2RxebX2Kp1e1BAeTpePP3MjLI0K0nF4vDjP3T6V2GzCypoEAIao604sX8hDdHcv+sAJHDrrAzVbUyZCVb1YG0wSQY/ZcJY1JAh/iGC0sopHvOIfaQY1qiqdCrZoMWAb6BA3oo1aVw5WyI27VWAs8/SM5fo8xAszETvpAmIE7eGZ3A5BUWrbQ4UITofpegccy9Z7H3yXdSsBbfVL8apYOX0bh5wlbo1r4vSYr6Om53SmSe38g2Ux/yONULcgW6t++JcQVIDIOgWri/0H1T0F8TMplA== 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=QiyXpmzIak3NaquUEvoYbPA3y/jW4LujZj6STww/FT0=; b=UpGES0dtsUtuvxpKHY4yyQmEQW26LEhD/vvCRUCzHtfm/9N9TJ+L2a7/9OVMBinMPRxzNWYL9hf85vALG0wQhRr6Y6pLUTvveeIs1BD88TwSTafEQIYRsMIFpBLTzGleHeNmZ5BdvM42XLOUzcE7Mu4IFE0PT68C+1hV3eWLVbtz5+vR+Smj7cREFHix6DhQZiOeCeaXUYyWVRgP8/hUMk6sZOpdTcucDW4xehgkSwx2VwsZWmwt6OJ4zjkytZ1vFQKZvWzSwT6ahZW7kTsoKL5nsvP7BQHHhQ9KcmWlpdngjAp4chHegBMnYyzNFA357uXA3d/z43zKSp1fk9yiYw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=os.amperecomputing.com; dmarc=pass action=none header.from=os.amperecomputing.com; dkim=pass header.d=os.amperecomputing.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=os.amperecomputing.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=QiyXpmzIak3NaquUEvoYbPA3y/jW4LujZj6STww/FT0=; b=E56DXOPNXRCTGeIvjgYPGh3x8urzfqlVICS1i+cFhn7gjHzkGl/Ay41RpbRxkH8MpA3nEgKkpI58xlmW8t4gNgs0DPTaurI4/h7MjPOODx3TDOjWtFRnOmJDts9Aw/sUOZzIvM5CwyfBhO79oJszMl/zPIFnFhdDaK+5FSRTpDQ= Received: from CH0PR01MB6873.prod.exchangelabs.com (2603:10b6:610:112::22) by PH0PR01MB6101.prod.exchangelabs.com (2603:10b6:510:12::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8335.6; Thu, 9 Jan 2025 17:00:28 +0000 Received: from CH0PR01MB6873.prod.exchangelabs.com ([fe80::3850:9112:f3bf:6460]) by CH0PR01MB6873.prod.exchangelabs.com ([fe80::3850:9112:f3bf:6460%6]) with mapi id 15.20.8335.010; Thu, 9 Jan 2025 17:00:28 +0000 Message-ID: <037d4442-4d2d-4aeb-8091-5efffc374d36@os.amperecomputing.com> Date: Thu, 9 Jan 2025 09:00:24 -0800 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH] mm: khugepaged: fix call hpage_collapse_scan_file() for anonymous vma To: Liu Shixin , Andrew Morton , Chengming Zhou , Matthew Wilcox , Kefeng Wang , Nanyong Sun , Muchun Song , Qi Zheng , Johannes Weiner Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org References: <20250109070059.369257-1-liushixin2@huawei.com> Content-Language: en-US From: Yang Shi In-Reply-To: <20250109070059.369257-1-liushixin2@huawei.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-ClientProxiedBy: SJ0PR03CA0291.namprd03.prod.outlook.com (2603:10b6:a03:39e::26) To CH0PR01MB6873.prod.exchangelabs.com (2603:10b6:610:112::22) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CH0PR01MB6873:EE_|PH0PR01MB6101:EE_ X-MS-Office365-Filtering-Correlation-Id: 90766d6a-72bc-4a7d-be68-08dd30cf1e1f X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|7416014|376014|1800799024|7053199007; X-Microsoft-Antispam-Message-Info: =?utf-8?B?d2NtbVovZG80VDA4c0xzOHp0a3l1aXNXYTMya201NUd4MndRd1lJRW1LZ0tW?= =?utf-8?B?Z3plVVJ5bFBkd3lPMVhLUno3V2t1VDI0U3FHUU9wYWg1UTVVOXpmMTM0dkZO?= =?utf-8?B?ZlhFS1dWblRmMHprRXFQdE5yTzFpSG9NN282VXRIL1dyc3V6OUNKaHdGdWgy?= =?utf-8?B?K3JWdmhlYlE2SmF1Y0RDV2hwbjY0WElUeDFFTXBUYWJoZkorT01QNHA0Ynky?= =?utf-8?B?eUJqMVZJRVZ6c2pBYk40TXNETTJaV29iZVlzM3FIcTE4R29tUy9iTzNsUlN3?= =?utf-8?B?WENoSmpQdS9xazBKQkx4OGlMS3MzTDh0S0I3RVdSVDdqOFhxWDhxOFFHb2ww?= =?utf-8?B?MW83NDlMSWdCei9HdnIzM0VEeEh4NzNyMFpuOVVtRkx2MDlEd3FFRlg5L2x5?= =?utf-8?B?QkdCQTFJQkNDNHpDRU41NExSYWlldWp4cmdtbklTR0EvWmNQRXQwV2VyVFkx?= =?utf-8?B?WjI1N1hPa25yQU5sQjZwSnN4VGh2T3A1WWtYWHRPVktmQUNobDNlVHB6enFh?= =?utf-8?B?YjM0U3kvcDA3Vk1rK0tRZ3FVWllNcnl0cWZoM25oWndTNjROcHBNQXRjY1lD?= =?utf-8?B?NTZtdUVZUXdpVy9nenZWVlRucWpUOGFVOTV3K2l2eVJWQWYyVWxERmp5QzR3?= =?utf-8?B?M3JmRlNqaXVrbnVaQ3RvZHRrNFhFS0o2WmVTSUVtLzNMcm15MHFTcnEwKzh1?= =?utf-8?B?azNQM2NiaGc2SzR4ditreldhRU1wWm1WV3VjWGRTOUo4L3FEMHVsalJvWkNx?= =?utf-8?B?VlVmMlZUT1ZqRm5oMGE3NGpkV25nL3V0VFplYVZOamVyajBBU28ySlhZekQ2?= =?utf-8?B?ZmM0aE0xYjBLcm5iQWhML1NrZUhHd0hTcGJPQjc2RUdiVXJXOURHaXViMm8v?= =?utf-8?B?Y2p3VGxiN2g4NUxKS05oVGIvUS9PVHllaGxnTmFDendqT1ZHelJiQUQraE5s?= =?utf-8?B?dFV6OW5YSE95S0kwNjRpc1Fxd1c0a0JhV0d1TUEvRFE5cG1XakdXRnpmbDRG?= =?utf-8?B?WlVlbjNnMWEvaGZWUUh4Z1hDNC8weWkrYm1IMjdMSlRJbE45YlpUN2EvL1lP?= =?utf-8?B?TDZZQWhJWjRPYVBteUJhYUVHZ0lYT083bTNteVhTb0tlTyt2WWtuMkIzbmsr?= =?utf-8?B?dU9RaFFnek5lNGRsWmQ3dEhCd0U5WWs5SkZTMUEySmVaTGMvcXZmOHRHOTVY?= =?utf-8?B?QjZYekZ6RlhSdDZ6SWZqL3B1eVpRV0JpUHF2bVBISGpVcmo0bWZGYTk2V25a?= =?utf-8?B?MncxZlhPRFFkT1REN2FST3NhckVZVGcxMkhGL1ZwOGNoNHk5WWZvb2NiQSsx?= =?utf-8?B?MEtrZTVaSU11Yi9QTjFNOEdnczVDM2ovM25JaDRkZHV0ZWVHMjlYVEZHOGtL?= =?utf-8?B?U3hUT0tHOGhwdnVKcXZzakxndVpkdHQzS0hpZlNTaTlwWUVrek1VT2JJMEZv?= =?utf-8?B?TGo2Y2lrdk1pWS8zbEhLcUx0eW1GZFZVblFDV1MvVm1HTkdEeG1QbUh3NWp6?= =?utf-8?B?OXJZSVJQTENyakZIeXpJRExoSWx4NFZTNnNEYzlrdTBQaTlMUTlUVDRwcnNx?= =?utf-8?B?S1l6NVhLcVF1M01qUmQvendMeWF1WjFOQjVqak5hZ29pQVRtdWZNKzVqaFNa?= =?utf-8?B?c29hS2JoLzVONDVJc2w2TmJSYWRkeDYzZjZWYXh2R2NZZk1nbWU4d1ljT2t5?= =?utf-8?B?dWZjT2hTdzlDNGd2OUVQWGhuNmZISXVRdDhXRXFtUk0xczZ4L1NKNFF6ZlQ2?= =?utf-8?B?dFJaeElJblNTRndtQ0ovN0MwTFVLaFpjWVRMejdhTlZFaXFUVGowNG1sM3Bt?= =?utf-8?B?RzdveTR3d3RFT3ZGdTJWbWxJYmdGMFFoWjdPc2tlRWFwa3dRZEVsWVdKUVVX?= =?utf-8?Q?c0mDclq/ywbOH?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CH0PR01MB6873.prod.exchangelabs.com;PTR:;CAT:NONE;SFS:(13230040)(366016)(7416014)(376014)(1800799024)(7053199007);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?cVpGalBrWW5BUDFUcnA4K0VTOVo4TTh3cmlNdm5MUmtBZnNwalhVS3VqRG8r?= =?utf-8?B?ZDdBc0lHWTFVMVg3UHN6WGt2V1JhYU96MlMwb1VWaC9kTHUvTWpscC92WkFE?= =?utf-8?B?ZkRVQkNkMnd4QVJaYjVLKy9YZisrU2RlajQwSGtUZ3BGNlh3aTA2ZVVMOGNM?= =?utf-8?B?RUt4d2dRUlZNb3phTk9MOXB5T0Z2bStMZlcxRlIyNHdib01tMVI4MmttcThr?= =?utf-8?B?ZTBJRnNqd1R3QXhleWl3a3BjMllYaVJuWGovTmhDeHNuQXBkc2ptSENrZkFk?= =?utf-8?B?Rk9aelhmaTM3TmFJVVlSbWI4Q21wTjQ4OXhmeWFlSGN4bFJYQnpheTkwS2do?= =?utf-8?B?WXlEYlppc2thdlZRNUdobmxpVEQ3ZEcwNWdXK1dBYVZwd1NxSWxQRkI5cVNy?= =?utf-8?B?YWg1bVNhbTBnS0JHUWljSG4yMi9EdDByWTl2VXhubEVGeFpDVkx1Q3ozUUY1?= =?utf-8?B?TCtVTTlrZjFnd0dLa2NlNDQ1WkdZT1JiWEVxd2JwT21VZlNCT0tLK29zZHh6?= =?utf-8?B?MEVWdCtZSVRGbnR5SDhQeGtzMDFMWGptVFA5OFdqN2hWWVVqNUpjYWtGY21r?= =?utf-8?B?SHpZTEU2cFdjQnlHR0ZrRDVzdmk2QzhJUEZVbHI5cWJLNThBUnJITmd1Wkdx?= =?utf-8?B?bzY4eFc3OU92SkFVUHVZRElNTkFTZVdQNjlQUTA3WnFzTTFGRkFHWHFPbmVq?= =?utf-8?B?a1VISXlGd0VCdHVLT2xEbkJoaThUMlBiMFlwZi94aUtRUy9CMmhRL3ptTjFM?= =?utf-8?B?TUc2QUg5dkVuaUVTMkM3dldhR0J4U0pqemtTVmRCam5SWU91cGU2K1pKeERm?= =?utf-8?B?cmxYREVUbFg4U2lnY2dubldzdjNidEo0UXpvNHA4Qi9QSENjY0xlakVyeVV0?= =?utf-8?B?cGpBdXhwSEt5SEVmbGVucGk5V1hkTWN6VVFFTEY2UmFxNno5Zi9XNVg5d2Fp?= =?utf-8?B?d09nOG5oNkpLSFhVcmF1VmsyM2J5dUNGVy9XVGhjbUdjbVpNWjU0UlY4L0Nw?= =?utf-8?B?U3RUajNPV1M4VnpiRkR1eEdkdWJYekhOSG5BajFZUEdhdjJJSmJ3UDdvVkFH?= =?utf-8?B?OXRsUDl1N0liUCtDZnFsakVBYWpnaFVyT2xTTUkyK1JsWlgrZlRkb1pBQ3dY?= =?utf-8?B?di9rV3YyaG5GWGVJNm15M01YUk5GazNpMnZteHhvQ3VKZXpvSlNoWndja1NN?= =?utf-8?B?bDFvRWtnTEc2WVdyU3M3SWk3NHpUdk14YS9GdEhZYmppTnVPSGJSUVhiSHJs?= =?utf-8?B?SnAvSnNhSjBhcXVxSVN4bXA1WnVqRGRhQUlQNUdGa0ZNcFN3VHhtTlQ5QTZ6?= =?utf-8?B?R1Erc3hOM0xHdUR3YWV2ajhOcVVNbVJQSzdab241Ylg1NFg3SFh4d0VEcXFw?= =?utf-8?B?TkY0Uk5SbUNyWFdqZGVITHhpRi9vUE9kQ1N0WU1rby96azNlcXVoUG1qKzVP?= =?utf-8?B?Rk1uTWRsQVVGdVlwODZodzFGbGU4VGgxQ3dRRDJMbnJtRnpyVDIzMVRKVm05?= =?utf-8?B?eDJqaHh2UlpDcW5MSFRzU0lES29SNkp1bktVUFF6c05nNVFZR1dkTVNaMXE0?= =?utf-8?B?UzNicEI2T0FIUGQwS3FET3JRNFd4elNoUGV6cFE2bmdZOTVjVEpuMFZzZ3NS?= =?utf-8?B?S3hybWZEc0JJRGd5aExDSSs1N1lVUTVhZVpOY09KUE9IRldIOU1DbEU5bEE0?= =?utf-8?B?Sm14SkNpZXQzbkNoZjRDMC9DT2MxaVl3aFVLOW1nKzVTSFpoaTg2Qk95aHJ2?= =?utf-8?B?dkdPQ29yZmZiUSttRGw1QitGYXN1cStiejVzdmpSUC96Y3F6UVYvQzk2eVh6?= =?utf-8?B?YTJTb21yZnBORWRLOFUrOFJrZlJYRlFPbk9lOGR0OEo3NWwwcFJSNERrWXFM?= =?utf-8?B?a2crYVAvd2FNMTJzV0RZUkVrWTBEdVVLcUhhemdhcjdPVytRWkdPNGxZeDQr?= =?utf-8?B?S29ycUhDQXoraklXWW94ZzQ4NTJIbzNRSFFDdzhWOFFtREtwcTlJeE5oZS84?= =?utf-8?B?akFIeXlXQU95WDlHV2drMmJJcGVoV2NMVTZic3QvNzdhcjBEZ3BMT091b3pa?= =?utf-8?B?WVl2c09Eb3RvbEZEWFRldzB2WVB1U2FQOWtydjh0WVJxMnZPYlRTa3dKYXFE?= =?utf-8?B?QVhzWkMvb002VDUzLy8yMXliU0NwaldWQ09QbEFaZ1JTcXhLRmtscWsvMXlW?= =?utf-8?Q?AGE/6JihHSbk82OwPpusYf8=3D?= X-OriginatorOrg: os.amperecomputing.com X-MS-Exchange-CrossTenant-Network-Message-Id: 90766d6a-72bc-4a7d-be68-08dd30cf1e1f X-MS-Exchange-CrossTenant-AuthSource: CH0PR01MB6873.prod.exchangelabs.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 09 Jan 2025 17:00:28.0410 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3bc2b170-fd94-476d-b0ce-4229bdc904a7 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: vtuIPUXC85rG6ts6SWghcHioXvSLPbbXUtZ6NQCci2PzTpUKe6WvQWuSXIwcuTiw0R0f3PJnM5fGuWY7L+U5V+HsHyLsKLSLCcjPY1aUstI= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR01MB6101 X-Rspamd-Queue-Id: 5E817120022 X-Stat-Signature: mipgx17t57j6kdkjrzpmbh7xezecf6ew X-Rspam-User: X-Rspamd-Server: rspam11 X-HE-Tag: 1736442033-728832 X-HE-Meta: U2FsdGVkX182ikM2VMxiAWRyX4DTh4HfZYttG+Y4ohSx5Pmqaz2hkYoy9i49mGz5MBPZM9SRmICNIMXvCk5kb8JOzlPdQ/mpAdm79gg7kSrHvWmVKTXhEPK6KWNe7M/VQdcGdrMHoRLWxAj2urtWFkCK9tHNx2njoGkZTM9pHjDwmCoyssdOIbpqlGBvsL0yfkCW4gDUaetwQ/FRn6EENf5twWyuvVRPLaRZZq0etsToIwj5DFoqi6fF/BZF2UpusjyaTfzyVk6iv7qbJ60XWl+Ty+7lw0nU8FQ0QGNjF8DhEal5XV9njPnnQPuClb1ie+i2AnvjtLeo6Mia7vrimD6AWgKZeDpAu3C3gMHXcQvQDcjvhr+cwPqNsAwBrLuXfL7uSNC4HMfOJyR8yMvtt8vu0JIMRiLG7uIqTVxfz18LmHSyWq108l6wSpyOHmpHxYJOKwDWwdJYEV+JyCSyCvq5OIya5UqoS4KZxgtzs66u8j5iwrgz7X6KCalv3TdVbNqJi4SBoEU3tfyRBNcajteel4zWI9jbBs+1+YaRG4p8B0Mj34CYVPhBv0f+kNTzicTHeZeAGd8PDPLQquCcD6Cw4LdV9kQtnLcKisd5KvD+025vVfB92LjZGCrcTbKGBTVsdr10qiTGZ5cwrYwh7Wek6A+Nes9du81/K865+GiTGwSCy4S9dBD7v8n4V/qsnu8xZfyT/6mGmjPKHgyxJk9bhdJtBdDtKSW1xOKfK+GE2NoCLVs5W45r5DF4KAA8+ezpZDmvetEr2CkaXmY7TKHLfDTRNhgP7+pRDxA2I0dGPcNKQWduKSlPzNSkj33IM+p4CEg33FbExamNB36o2ch0wZy6pce8kvudDyQx/+4EBaflqcwxKQFR6DBXwRyLpa286Qe6p8PEUgo/rzcUdEeV6SrhBPx7Jg1FTT4lKHKfRnVukQJ88MYNlq94Xgy2peBQKBHxKL4n+XmkvBd wRPf2Fsw QDlpuRGF3HM1Q9ieKSYPB00WMa4kwxNTYGg7fxUb3+17pdafHtwnWkqXqnkpfvTTeRiSPIF2qqRLnhxORIzsT5QAlIYY0n8Ss5+2z0/dVK5KwNpyeaebIER1bk32HyHHJ3FTHTs3k8+5vvj9RMpv9HoCgtykV46kUQ7pLQwsXhihfhm6MZh82V02XbbuhKs1tOGG9lUpAg4i3tCfLbRfc0PzzIQFtmuM7uTKpl+ZnhdBXHd04zl0RuwG8SHZav3bBb2nSUz8gWY9d5JikDhf6O2TXlkl+gzqhGBDQrxlgJAxKit0yL47npCszl6f722SK4MTagretgPQfnzAjl7PEgLnUsNWvbvdDF2yYqRtzVUZ3hTKlnUPEcmyerck+pqe485Qc3UzMOSze/dG0N+NAi4Dc4P0mu9l0fb3dqF3tvs3+WEwn9MPZSmtCqGwy3q1uA7nhbgz32JWZGecYxz2Y9CAoIBpkkiqawwXZnVc+Z+6Xd4DX3OTMm7fYqoTb9eEHmSMaH1jD3v9mxgqO0VLYL6k+DoDIOv4XIa+1Gl4nIHRhFZM= 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 1/8/25 11:00 PM, Liu Shixin wrote: > syzkaller reported such a BUG_ON(): > > ------------[ cut here ]------------ > kernel BUG at mm/khugepaged.c:1835! > Internal error: Oops - BUG: 00000000f2000800 [#1] SMP > ... > CPU: 6 UID: 0 PID: 8009 Comm: syz.15.106 Kdump: loaded Tainted: G W 6.13.0-rc6 #22 > Tainted: [W]=WARN > Hardware name: QEMU KVM Virtual Machine, BIOS 0.0.0 02/06/2015 > pstate: 00400005 (nzcv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--) > pc : collapse_file+0xa44/0x1400 > lr : collapse_file+0x88/0x1400 > sp : ffff80008afe3a60 > ... > Call trace: > collapse_file+0xa44/0x1400 (P) > hpage_collapse_scan_file+0x278/0x400 > madvise_collapse+0x1bc/0x678 > madvise_vma_behavior+0x32c/0x448 > madvise_walk_vmas.constprop.0+0xbc/0x140 > do_madvise.part.0+0xdc/0x2c8 > __arm64_sys_madvise+0x68/0x88 > invoke_syscall+0x50/0x120 > el0_svc_common.constprop.0+0xc8/0xf0 > do_el0_svc+0x24/0x38 > el0_svc+0x34/0x128 > el0t_64_sync_handler+0xc8/0xd0 > el0t_64_sync+0x190/0x198 > > This indicates that the pgoff is unaligned. After analysis, I confirm > the vma is mapped to /dev/zero. Such a vma certainly has vm_file, but > it is set to anonymous by mmap_zero(). So even if it's mmapped by > 2m-unaligned, it can pass the check in thp_vma_allowable_order() as it > is an anonymous-mmap, but then be collapsed as a file-mmap. > > It seems the problem has existed for a long time, but actually, since > we have khugepaged_max_ptes_none check before, we will skip collapse it > as it is /dev/zero and so has no present page. But commit d8ea7cc8547c > limit the check for only khugepaged, so the BUG_ON() can be triggered > by madvise_collapse(). > > Add vma_is_anonymous() check to make such vma be processed by > hpage_collapse_scan_pmd(). > > Fixes: d8ea7cc8547c ("mm/khugepaged: add flag to predicate khugepaged-only behavior") > Signed-off-by: Liu Shixin > --- > mm/khugepaged.c | 6 ++++-- > 1 file changed, 4 insertions(+), 2 deletions(-) > > diff --git a/mm/khugepaged.c b/mm/khugepaged.c > index 653dbb1ff05c..eb9d240e42e8 100644 > --- a/mm/khugepaged.c > +++ b/mm/khugepaged.c > @@ -2422,7 +2422,8 @@ static unsigned int khugepaged_scan_mm_slot(unsigned int pages, int *result, > VM_BUG_ON(khugepaged_scan.address < hstart || > khugepaged_scan.address + HPAGE_PMD_SIZE > > hend); > - if (IS_ENABLED(CONFIG_SHMEM) && vma->vm_file) { > + if (IS_ENABLED(CONFIG_SHMEM) && vma->vm_file && > + !vma_is_anonymous(vma)) { Thanks for catching this. It sounds a little bit weird to have vm_file for an anonymous VMA. I'm not sure why we should keep such special case. It seems shared mapping is treated as shmem file mapping. So can we set vm_file to NULL when mmap'ing /dev/zero for private mapping? Something like: diff --git a/drivers/char/mem.c b/drivers/char/mem.c index 169eed162a7f..fc332efc5c11 100644 --- a/drivers/char/mem.c +++ b/drivers/char/mem.c @@ -527,6 +527,7 @@ static int mmap_zero(struct file *file, struct vm_area_struct *vma)         if (vma->vm_flags & VM_SHARED)                 return shmem_zero_setup(vma);         vma_set_anonymous(vma); +       vma->vm_file = NULL;         return 0;  } > struct file *file = get_file(vma->vm_file); > pgoff_t pgoff = linear_page_index(vma, > khugepaged_scan.address); > @@ -2768,7 +2769,8 @@ int madvise_collapse(struct vm_area_struct *vma, struct vm_area_struct **prev, > mmap_assert_locked(mm); > memset(cc->node_load, 0, sizeof(cc->node_load)); > nodes_clear(cc->alloc_nmask); > - if (IS_ENABLED(CONFIG_SHMEM) && vma->vm_file) { > + if (IS_ENABLED(CONFIG_SHMEM) && vma->vm_file && > + !vma_is_anonymous(vma)) { > struct file *file = get_file(vma->vm_file); > pgoff_t pgoff = linear_page_index(vma, addr); >