From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail.openvz.org (mail.openvz.org [69.168.225.77]) by lore.virtuozzo.com (Postfix) with ESMTPS id EE9398017D for ; Wed, 28 Oct 2026 15:32:11 +0000 (UTC) Received: from mail.openvz.org (localhost [127.0.0.1]) by mail.openvz.org (8.14.4/8.14.4) with ESMTP id 69SFUp6I021714; Wed, 28 Oct 2026 18:30:52 +0300 DKIM-Filter: OpenDKIM Filter v2.11.0 mail.openvz.org 69SFUp6I021714 Authentication-Results: mail.openvz.org; dkim=fail reason="signature verification failed" (2048-bit key) header.d=virtuozzo.com header.i=@virtuozzo.com header.b="Vp79CLpA" Received: from mail-pj1-f69.google.com (mail-pj1-f69.google.com [209.85.216.69]) by mail.openvz.org (8.14.4/8.14.4) with ESMTP id 69SFUmMt021710 (version=TLSv1/SSLv3 cipher=AES128-GCM-SHA256 bits=128 verify=FAIL) for ; Wed, 28 Oct 2026 18:30:49 +0300 DKIM-Filter: OpenDKIM Filter v2.11.0 mail.openvz.org 69SFUmMt021710 Received: by mail-pj1-f69.google.com with SMTP id 98e67ed59e1d1-3ab2395f104so942383a91.2 for ; Wed, 28 Oct 2026 08:30:49 -0700 (PDT) X-Gm-Message-State: AFq9FYKsb4SBMQBwjjG7QV63YyxYBBsZjoOAlY0jskZif2/AWfMKHQCb KzQXnyb9Ha5NW8q9z9bR0fqCFvrZ444kRFcvOCozHH2ffGSTArEB2VE4rCVvhR8ATi62SDBoUol l6Rtrs/4MZJFLHa5wLwWpUDZAAVXSrhIgqxy7BiI1Fz9Q3J8XDDQIXA== X-Gm-Gg: AYBFou3x5DFPaE2HOi2mRUA8T5nENDb6pFJetMXXXEnd3Z5+1WGBMaXPR0b577JIHoo LRJt9U+v652bC8rrdBW442Q28+sEbHbjwxKy3RTCx9nNMoqKIFEWO5nrvZqWLrTBZ+C2OMo3B3u cw7JRame9e0reD/LPxd32gjEpH5jlx2k5aKkybDY8ffAFd6rLL66WFGzZszS9N8QPMfU8KPOF3u kSdHyhhdKVkeuaStnCQL3Hci8agQHNHkB19KIc4pzOmHxeQTFHUVLWlD4T1h0mLI+8crWN+ssFb zvM3XTsiy0geQjTJ+4q/62Un8tKLJ9poIOaXGcriv0C8Zj6bCnkoO+9IUqe/BdEENliXxo4KEw2 vkbDyKBsLPQgyPALLEdP/wE0k0xdLnTm8yPiHnC1UQNuafLdPebzucgTPfOTHqKZqdJC0vAGG1v XGmzh6maQ+se1B+Xt4XpeS X-Received: by 2002:a17:90b:258b:b0:3ab:884b:65ab with SMTP id 98e67ed59e1d1-3ae58236ce2mr1910131a91.55.1793201448244; Wed, 28 Oct 2026 08:30:48 -0700 (PDT) X-Received: by 2002:a17:90b:258b:b0:3ab:884b:65ab with SMTP id 98e67ed59e1d1-3ae58236ce2mr1910101a91.55.1793201447452; Wed, 28 Oct 2026 08:30:47 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1793201447; cv=pass; d=google.com; s=arc-20260327; b=mjj/8R+XJxXdCP05TPTQCPCsvFrvwewGJjkem//vq9T9Z9S0UC8lIiAkHSs7Xxb1kP Ze5ZRzAdwmVCEbP6wOxq0cvfvuFfwAGHrUdvUMOO5+oq9R6gUmL2GOABARe0lSTe9knW +cvHXU1aeGsFpHS7HIaxMtGF4usIaeoMhkyR+iY8goeai1V2cIEmeoO/nqulcca6J+T9 Bc0Ibtrn3Y0yHf2M/10Ok7jy093WxhRYSOtF3kfGiF+lNflMCLOE5hUrVmk5Iy4BJgQt ziKEVV5EtPWESiSEFkvcoSvbBuuV98i98zM3G393D826Qo/yp35+NysppNTv+hH+XaS8 vqfw== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20260327; h=mime-version:content-transfer-encoding:in-reply-to:from :content-language:references:cc:to:subject:user-agent:date :message-id:dkim-signature; bh=WFYLm4Ipyr1XYNA7hN3DlFMy6kpoyqJut8NX46qOlB8=; fh=gOwN6OiKHmv4OmN/bLF0Di2Q4hCWleLFljIg3KC8d00=; b=BciqUdf4a3WH61EUoO8DKtdhEABk0DVQXmtxA6Y+Bncd7jehhd4UmbPEEbTZNVCSRa qT/H2psig9O/uQc7U5YTpz7kzYobh2+JY0I0OuqtsJttuN7NNv2jsCv9mqeqQYLP53YC j3YIETFDXevPpZTPdF9ltEJyE8mehqNVVm8ddB4d1lwm25Z2APnwfghn89fKWQQ/GMbd phOuZdsN7J/z1338P7sG1c9s1nghzedjZU71HTbn6VjIK4IsgQg/i2ca/BYKpthbTFdV bjWYVjZlp7WENYJrEQ2OVx3qU6MW78DVUuBwFm6lj0616hPidDKRBOzIHBoBkwAOrFP4 3/yA==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@virtuozzo.com header.s=selector2 header.b=Vp79CLpA; arc=pass (i=1 spf=pass spfdomain=virtuozzo.com dkim=pass dkdomain=virtuozzo.com dmarc=pass fromdomain=virtuozzo.com); spf=pass (google.com: domain of khorenko@virtuozzo.com designates 2a01:111:f403:c20f::7 as permitted sender) smtp.mailfrom=khorenko@virtuozzo.com; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=virtuozzo.com Received: from OSPPR02CU001.outbound.protection.outlook.com (mail-norwayeastazlp170130007.outbound.protection.outlook.com. [2a01:111:f403:c20f::7]) by mx.google.com with ESMTPS id 41be03b00d2f7-cd8ccc87bc7si17456978a12.137.2026.10.28.08.30.47 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 28 Oct 2026 08:30:47 -0700 (PDT) Received-SPF: pass (google.com: domain of khorenko@virtuozzo.com designates 2a01:111:f403:c20f::7 as permitted sender) client-ip=2a01:111:f403:c20f::7; Authentication-Results: mx.google.com; dkim=pass header.i=@virtuozzo.com header.s=selector2 header.b=Vp79CLpA; arc=pass (i=1 spf=pass spfdomain=virtuozzo.com dkim=pass dkdomain=virtuozzo.com dmarc=pass fromdomain=virtuozzo.com); spf=pass (google.com: domain of khorenko@virtuozzo.com designates 2a01:111:f403:c20f::7 as permitted sender) smtp.mailfrom=khorenko@virtuozzo.com; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=virtuozzo.com ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=sutvufgYzx93UExal9HKBYEfNkHXMKfrvUBpWiGJbxVfr5AMDbXqeLpTM+ekFP02X5/SqkkOBGXOOTpTxtscdsZB6t6f1GpkaJK/N/FBKwbCiky3PnMwafIcvke3DVGVqofmHeWPVbqUBBd+9MFp45aN7e2Cu4ILEgTuPP9N8ZJ2v+fengxZEtKmXZ0Ry0u5zMBjDYYsrd/+zztFDndFNxYXS9F9Khy++AB+qdXyXXcM5N7TXG1NcV9xDDx/g1Mi9mSEtXXFIXwYB0NEElh/DOM+1YciKV51eM/9nNbevpmww+Pp7/iVNnGZKeeBXao4Z8ADk0/3z2lHXNlHXKN0lg== 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=WFYLm4Ipyr1XYNA7hN3DlFMy6kpoyqJut8NX46qOlB8=; b=SqpSqkmySCddcXt7IUEhL+EqLmD7LqHB0L+eLS1STmFbdzbqKWSUo+rFvATXvKKvBfJq/T3jhGiI/y5cuLlCfGIoQe+DzHsDnGQ6CPl0aMyvoz7JY6QpRqinF8Wc+CsLQ5Scxvx5Bd1OP4Q2tt+hXi2nIvAWu/LVHWyZUml5enVh8X3fIZpGCjiq44PYrr0PDr8tUa1hE86UUI4U9V2/POKdFgZHyiW26GUGwxI1FIkSsmklf2pw1ORJUthgfKYcXM9DpE/hsqBFLhVaeRLbxsgtV8aHyuOi6oW8U7sKTXs3oGAA7VODB3pk2u2qJsdVA3cWMUi4T3Exih++c2+jNA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=virtuozzo.com; dmarc=pass action=none header.from=virtuozzo.com; dkim=pass header.d=virtuozzo.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=virtuozzo.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=WFYLm4Ipyr1XYNA7hN3DlFMy6kpoyqJut8NX46qOlB8=; b=Vp79CLpAdvP5AvxlikFUEGrhyiC6LyJbdcaUsWDDKXJCxzeJvqu3DzMnRFChqgcp+P4WG5E9daWWeqzlFMINxQ701/WnrLCWNWDX41VuGzCDX6rAxzV/ssCAG65hTQT/38GhHtxovQcjbFk0b6XZ0UWrfz/AgzSP8sTKrECwDen2e4cbA6ThDnbuL8L9Ue6veb2KShGMr+ozfyUTF61nR44bhFhs90kTsR5HlgaoXGspoaDgGamJEnUFdOMe8GpkrnR5J6lB72VFbgPADcHS81qU9Fr+/2TYjo+apzLsIpsOUYoVAqP+oDgGsGTMpjv9BJOXP4uaaH8mw2+UWULNSw== Authentication-Results: mx.microsoft.com 1; dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=virtuozzo.com; Received: from AS2PR08MB9075.eurprd08.prod.outlook.com (2603:10a6:20b:5ff::9) by PAWPR08MB11331.eurprd08.prod.outlook.com (2603:10a6:102:50b::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.546.22; Wed, 28 Oct 2026 15:30:44 +0000 Received: from AS2PR08MB9075.eurprd08.prod.outlook.com ([fe80::3f57:9ced:7a37:1bd8]) by AS2PR08MB9075.eurprd08.prod.outlook.com ([fe80::3f57:9ced:7a37:1bd8%4]) with mapi id 15.21.0546.021; Wed, 28 Oct 2026 15:30:44 +0000 Message-ID: <2e3b4eb9-054f-463e-8b35-d8c62eba88bd@virtuozzo.com> Date: Wed, 28 Oct 2026 16:30:43 +0100 User-Agent: Mozilla Thunderbird To: Pavel Tikhomirov References: <20261028-b4-prep-khorenko-vstor-151607-numa-migrate-order-v2-0-b973a82a5b0c@virtuozzo.com> <20261028-b4-prep-khorenko-vstor-151607-numa-migrate-order-v2-1-b973a82a5b0c@virtuozzo.com> <010701a182e47c1c-07e58fbb-43c1-45ec-8a62-7bbdd6363582-000000@eu-central-1.amazonses.com> Content-Language: en-US, ru, sr From: Konstantin Khorenko In-Reply-To: <010701a182e47c1c-07e58fbb-43c1-45ec-8a62-7bbdd6363582-000000@eu-central-1.amazonses.com> X-ClientProxiedBy: AS4PR10CA0009.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:20b:5dc::12) To AS2PR08MB9075.eurprd08.prod.outlook.com (2603:10a6:20b:5ff::9) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AS2PR08MB9075:EE_|PAWPR08MB11331:EE_ X-MS-Office365-Filtering-Correlation-Id: 97a3db20-9a17-480c-e79a-08df35086e9b X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|23010399003|1800799024|366016|376014|261026140227099003|5023799004|4143699003|56012099006|261009223027099003|261022075727099003|10067099003|261022105027099003|261021121427099003|261026121527099003|22082099003|18002099003|261028144727099002; X-Microsoft-Antispam-Message-Info: pT3zKaXgepSkowq9PKZf3duPm8AHXq1dEEirVBDRMwXYePoaiwCI3GiNYsIg0FIwL2TPEM3vfxAK8O2IcWepy/BsqUz+zu9rcLG1nB+aADw+QGX/xA/GOCaMrpbXwm+1uSXfkHucvBRjpxzif1KNUMZhnrjCDmSJ6wLvP9RvApujPKJ9LzoXk/++roMVmavYH0tKY1/g05FbFmQ4wYi9qkL17bR6KpQm0VhEK+oPP3zjVMmM1fVbdraNN3pc7ELIkvhHkIfhx0wmXPArepgXNhnG2Et1qNlx5pvs8bPcBXaVwRsb9COoqgz2VvpPJubqoDpTQBqmdJLtjcDA8SObN9RcdLBj0K4Cq1cCcfzXaTFfpfKLbrPNxem/HhZqVTGm5DIl9+0+LTzSdfDymvz7gLo+KVAQjmlSu4gk+mHAT4+5WLt/LQ4VbOZDsritoruhDCMM9HeDLouz6XgT29fljrzieYKWfkqjywgLhrbl5bAWrDOg0BFsE6LcCBqvMfGjnhDWFjNU3OMr/TGW0rrDLO1MoPoVW0boMlRTSq/f8avG+kjecZVwDTu4waaoFhJZ2YOiyDLN8pXFIoepLDk82UNldlZdMof9BMXlQdpVi1d3mML94h6sm9vRzT05SPd659p5a+RaBh8IH81KPs14f2N7QQzSq/eGZ0rEFg6r1K8= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AS2PR08MB9075.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(23010399003)(1800799024)(366016)(376014)(261026140227099003)(5023799004)(4143699003)(56012099006)(261009223027099003)(261022075727099003)(10067099003)(261022105027099003)(261021121427099003)(261026121527099003)(22082099003)(18002099003)(261028144727099002); DIR:OUT; SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?Umkwb0d6SGI5RC9TQkFuNjVxa2oyYzdGYUk1T0VoK21MOEFNQ29mOStNS21M?= =?utf-8?B?TUg5WTQyQmtrK1lhMWs3bXdzZHh4WHhzakd1S2JJZmxGV0xPelRycTh3QWpL?= =?utf-8?B?TVFkZVM1R3lKSFM3Vk5iVTE3OHBqQ08wd3BCd09yWUlYdDFuSmt4VjBjOG5x?= =?utf-8?B?Q29LWUJGSkZ3cExiNEFVem1MOFo5ZDR2NEpYdjlreTVURU9EdlhkT0ZsNGVo?= =?utf-8?B?NDRoQUE4b24rZHlZc3laLzcrMjFqVElIWjlUMlZ3aTNHMUJXSHhjWkRsYUFU?= =?utf-8?B?aFFaWVZzQUkzaDNpczI0aFhPVTQvaStyT0NRZm81R3B4ejIvQkdNSkkySGpC?= =?utf-8?B?cVdGMXlYMzdJQ004N3c2T0Y0YTQyVnZMRVdPQ3ExVm9sMGdJV3EvenRJSzdZ?= =?utf-8?B?dGM5aklObnplTUJkYXFJMHVPeUtLcG5lbHlRMFNuc28rRSt3U0cvdHZHd2JB?= =?utf-8?B?Q2VEOWhqTGFxMEtvMkhpL3RjbHVPbU1aVlBxTW9lbmxNM09kMUo2b0lsTUoz?= =?utf-8?B?OXRSd29QWDNTbDFSVlREZVBBdkVQYk9wWFQraFJsTzZMZ0NOK2N5c2R1WnZa?= =?utf-8?B?Sis5dTlWQjQ0S00yYml1bDc5Z3dsdnhqeHFGZ0RCWVV6ZUJ5bVVHWUlHb2lR?= =?utf-8?B?TU9HTm1na2ZVcVo5cDZpUWRueXQydUs2Rno1dTZnTkNnTWd4TlFaci9ZaHlo?= =?utf-8?B?OWl3SG5IYk5rdnQzTENuTXJTczU1MVRqZEJUdGwrMnFpamxZS1VxdXhaSURm?= =?utf-8?B?ZnQ4T1p3Q2JHNk9PRHhIc3ZtVVlBb3VaaERUVVNMbjNUZ04rekpEVGl4b0pK?= =?utf-8?B?ZGhmWHV3TnhvUjdWVnNkcTBFUkVyYkt4a2RUV3MwSUJwM2YxTXNlWkUrcWZh?= =?utf-8?B?dGhoeElETzVZQk4yT0FSNTZ5UmNVMm9LelpWcjdXWG9tM3RUYmdDOXdEYjVl?= =?utf-8?B?cUd1QVBWRytjcm1BUHdEOVlsY3pzcUZ1dC9FMWczMnRBTzMzcUZybVladDFF?= =?utf-8?B?ajdlVWt5YngvZUREdUdmOXNZa0JET3BBV2pOa3d2SjN1TzJuOHZQZTBOQmRG?= =?utf-8?B?WndIL0cxb3EyU0JIUEV4dElvcGltdGFuTVNTWjU4R0pwb0lIZUdLQ1VVTW5S?= =?utf-8?B?cllWVnJJZHptKzVnVXQrV2JrdE1VSCt0c2JZZ25OUldSTVBSTmcva1cyejlu?= =?utf-8?B?UW16WXRQVzFUR041M3pQMCt3ZCtVRHJRaGw5Ylo0djRtY2JYdHpZSm9zOGUy?= =?utf-8?B?MTV1ZlFrWlNnVTJITk4xdjV2VkY1NS9tVDZMbFNRV2VPUXhwY0VPZjZ0VGZT?= =?utf-8?B?amZScEFpQVdrVnc4M1FQd1VmMHphb0xaUFA0bldDUmhTZk9IM01FSTE5ZE1R?= =?utf-8?B?Z1Z6MWpDaHBRekxsVjRhRkxXeWdvN1p1OEwvblhJZXpicmljM3BmVHg3K3R6?= =?utf-8?B?Q1I3bmtKRlNRbEYrZmo5QmxxVlRqdzJZZHpaZnhBY0ZCR1JmZGc5LytYV29j?= =?utf-8?B?c3lMTG0zVjdWNTY4cHdiYk80SGhWY2I1cHYxTkxvUGRha21QVThya0p2bUZt?= =?utf-8?B?RExWWlVEU1lUYVNsaWVJZXBFditydU9FZGlXeS9RWnJ5bDA3MkRJYnFRS25Y?= =?utf-8?B?WFdBQVJuN1ZWZ1o4TGhaNm9vaWszQVQybTkxKzBaYXNwd0ZLOWUxY05yUnVh?= =?utf-8?B?V2h2bVhGT1FGZmgwaEVnOTM2VDBCRldCNnZDUldJNWVsN2IyZkZoazhzZlI4?= =?utf-8?B?L1owMW1HWDRZd01lSU93eGU0WHl3cmxSVTdYWnlmWmd5OW9WelBNRnZQY1da?= =?utf-8?B?WFMvVHZydUhTRk05WXJFOWhXais4em5XUGJiUUJsU0RWb3lSNkU2WElOOFdV?= =?utf-8?B?RExpOEs4WmJJWVFXR2w5T0JhRFFtL2pDa0t4aFk0WldWbmk3eGNHSWhPUC85?= =?utf-8?B?NmFab09MTlg0elJudUpKVVN1TitxUGJyMWQ2NVYvb3huYmQ0WkFySGFqTTE4?= =?utf-8?B?YXRBYk1MZXF0a2tlNzk1RWo0cys1c1JZdDRPOGZMLzAzOCt3QTJqNnBQSmsw?= =?utf-8?B?M2N5UE5jbDY2eTBzM2hHWVZGb0ZCcHV1MVVGVW9UNE51VDVCUVFtTCtNbGNX?= =?utf-8?B?VHZCNm9PdFRHaS9ybGt4WnJWWlJsblVlc1ArdHR0aWMreEo3cUdXZGErb2Mv?= =?utf-8?B?OURyYVJORThzWUhzamk1cy9iZHBocGxUa2U1NzVRUjhJSWNZV3dGOXowbitF?= =?utf-8?B?WURyU21FblNSUDJDZUVrVmZMd1lWQ2hoWWxsOU9WZ3hMeE41eEtPaHRxQjdN?= =?utf-8?B?aVVZN1ptY3F5L0tGQ1ExYVlMaEtIU3Y2amJBVk1ES0NXSGtQMVNpQT09?= X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-Network-Message-Id: 97a3db20-9a17-480c-e79a-08df35086e9b X-MS-Exchange-CrossTenant-AuthSource: AS2PR08MB9075.eurprd08.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Oct 2026 15:30:44.3075 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 0bc7f26d-0264-416e-a6fc-8352af79c58f X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: o77c7ljHALhbt9GoimY9PoYR4WBr4G9Zva9TqIonLjqGs6hSO6sY6pIMologeG5WP9e+ZvxoxoD/mQqjcCqqWw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAWPR08MB11331 X-OZ-Fwd: true Cc: devel@openvz.org Subject: Re: [Devel] [PATCH hci-8.1 v2 1/2] mm/memcontrol: allocate numa_migrate targets of the source folio order X-BeenThere: devel@openvz.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: OpenVZ development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: devel-bounces@openvz.org Errors-To: devel-bounces@openvz.org On 10/28/26 15:22, no-reply@sashiko.virtuozzo.com wrote: > Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider: > - [Medium] mm: memcg numa_migrate uses no-reclaim THISNODE gfp for all large folio orders > -- > > commit dc423622ee7bf287039eede1edeca15b40cb3108 > Author: Konstantin Khorenko > > mm/memcontrol: allocate numa_migrate targets of the source folio order > > This patch makes memcg_numa_migrate_new_folio() allocate the destination > folio with the same order as the source large folio, instead of always > using HPAGE_PMD_ORDER. It also drops the thp_migration_supported() check. > >> diff --git a/mm/memcontrol.c b/mm/memcontrol.c >> index 0734c0fa21d05..d8a87913ace37 100644 >> --- a/mm/memcontrol.c >> +++ b/mm/memcontrol.c > > [ ... ] > >> @@ -3487,13 +3488,13 @@ static struct folio *memcg_numa_migrate_new_folio(struct folio *old_folio, >> VM_BUG_ON(ms->current_node >= MAX_NUMNODES); >> } >> >> - if (thp_migration_supported() && folio_test_large(old_folio)) { >> - return __folio_alloc(GFP_TRANSHUGE_LIGHT | __GFP_THISNODE, >> - HPAGE_PMD_ORDER, ms->current_node, >> - ms->target_nodes); >> + if (folio_test_large(old_folio)) { >> + gfp_mask = GFP_TRANSHUGE_LIGHT | __GFP_THISNODE; >> + order = folio_order(old_folio); >> } > > [Severity: Medium] > The order fix looks right, but the no-reclaim, single-node policy is now > applied to every large folio, not only PMD-sized THPs. > > GFP_TRANSHUGE_LIGHT has no __GFP_DIRECT_RECLAIM, and __GFP_THISNODE pins > the allocation to ms->current_node. For a small-order file folio or an > mTHP, can the allocation now fail on a fragmented node, with no fallback > to the other nodes in target_nodes? Before this patch, such folios got an > order-0 destination allocated with GFP_HIGHUSER_MOVABLE | __GFP_NORETRY, > which does allow direct reclaim. > > If the allocation fails, migrate_folio_unmap() returns -ENOMEM. In > migrate_pages_batch() the -ENOMEM case then does this: > > case -ENOMEM: > ... > if (is_large && !nosplit) { > int ret = try_split_folio(folio, split_folios, mode); > ... > } > ... > rc_saved = rc; > if (list_empty(&unmap_folios)) > goto out; > > When the split also fails (for example -EAGAIN from an elevated refcount, > or a mapping whose minimum folio order is above 0), migrate_pages() > returns a negative value. Then in __memcg_numa_migrate_pages(): > > ret = migrate_pages(&pages, memcg_numa_migrate_new_folio, ...); > putback_movable_pages(&pages); > if (ret < 0) > return ret; > > Does this abort the whole memory.numa_migrate write with -ENOMEM and > leave the remaining folios of the memcg unmigrated? > > The old PMD-THP path had the same failure semantics. This patch widens > it to all large folio orders, and the commit message doesn't mention the > change in allocation policy. > > Would it be reasonable to fall back to order 0 or to a reclaim-capable > gfp mask when the large allocation fails? The allocation policy for large folios does not change here. Before the patch every folio_test_large() folio already took the GFP_TRANSHUGE_LIGHT | __GFP_THISNODE branch, only with HPAGE_PMD_ORDER. The order-0 path with reclaim was reached for a large folio only when thp_migration_supported() was false, which it never is on x86_64. So a fragmented node is now asked for an order-4 folio where it used to be asked for an order-9 one. The fallback you suggest is in migrate_pages() already. On -ENOMEM from the allocator migrate_pages_batch() calls try_split_folio() and goes on with the batch, and migrate_pages() then runs the split pieces through the same allocator as order-0 folios: GFP_HIGHUSER_MOVABLE | __GFP_NORETRY, the whole target nodemask, no __GFP_THISNODE. Only when the split fails too does the write return -ENOMEM with the rest unmigrated, which is what a PMD THP did before the patch. Whether large destinations should drop __GFP_THISNODE and allow direct reclaim, as upstream alloc_migration_target() does with GFP_TRANSHUGE and the nodemask, is a separate change, not part of this fix. _______________________________________________ Devel mailing list Devel@openvz.org https://lists.openvz.org/mailman/listinfo/devel