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 7CFEEC54E4A for ; Tue, 27 Feb 2024 13:52:45 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id BA8756B0161; Tue, 27 Feb 2024 08:52:43 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id A700E6B0169; Tue, 27 Feb 2024 08:52:43 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 89D6C6B016A; Tue, 27 Feb 2024 08:52:43 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0015.hostedemail.com [216.40.44.15]) by kanga.kvack.org (Postfix) with ESMTP id 680956B0162 for ; Tue, 27 Feb 2024 08:52:43 -0500 (EST) Received: from smtpin10.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id 392B9160BE7 for ; Tue, 27 Feb 2024 13:52:43 +0000 (UTC) X-FDA: 81837724206.10.B136D9B Received: from out30-97.freemail.mail.aliyun.com (out30-97.freemail.mail.aliyun.com [115.124.30.97]) by imf13.hostedemail.com (Postfix) with ESMTP id ED7E820021 for ; Tue, 27 Feb 2024 13:52:39 +0000 (UTC) Authentication-Results: imf13.hostedemail.com; dkim=pass header.d=linux.alibaba.com header.s=default header.b=jzWotuxS; spf=pass (imf13.hostedemail.com: domain of baolin.wang@linux.alibaba.com designates 115.124.30.97 as permitted sender) smtp.mailfrom=baolin.wang@linux.alibaba.com; dmarc=pass (policy=none) header.from=linux.alibaba.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1709041961; a=rsa-sha256; cv=none; b=oLIfuNpVRREfK3SZQoy6Sso6EtEzR94yAHZtfrwL5t9XPj6qlzPyNO7fM5+g9/hOBvIWlr +Soht27G8NXcgS15Oz8ucwOr6bjgWjWMzuQ0ukcucp0ltvc9PHHuQM+dLJ32YsZQCr9Ex1 rnbXV8cFy5bmFvNWZ00ZSG7p4XuAhMo= ARC-Authentication-Results: i=1; imf13.hostedemail.com; dkim=pass header.d=linux.alibaba.com header.s=default header.b=jzWotuxS; spf=pass (imf13.hostedemail.com: domain of baolin.wang@linux.alibaba.com designates 115.124.30.97 as permitted sender) smtp.mailfrom=baolin.wang@linux.alibaba.com; dmarc=pass (policy=none) header.from=linux.alibaba.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1709041961; 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-transfer-encoding:content-transfer-encoding: in-reply-to:references:dkim-signature; bh=rl4Xu+8sGh9GZeUqgSZds1fp/asJZH2dvkyuvxgK4lE=; b=m6coTzgCgcbPAQqkvaQphqR9H3CM9gEI6k8kWPTW/CLuIY4Zsu7MJT32+Y4BcOnjeDaKmx yk8QDWdn6cGCReznxIOcDuZstaXsQUGcNLj4McwcVm15ZI1IkMUBmJMarC0TE8w/ZYAWmu jgLGhxcsxmkdOuAMb5/uDd1pUsoi598= DKIM-Signature:v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.alibaba.com; s=default; t=1709041955; h=From:To:Subject:Date:Message-Id:MIME-Version; bh=rl4Xu+8sGh9GZeUqgSZds1fp/asJZH2dvkyuvxgK4lE=; b=jzWotuxSQu2Ga+ORiRtwE2Ym9nfW0mECQ3EqjrJB6wfoyDyqs9dVzR4S/bQJard/ZCFZyJJxC/0db/WSQQzB6z+sIIPt6W/EEOe89FBDYyxpyrppBS4QjtAudWGhB5ppl9M9Yf5jNKwGIa4VylMBIfx4c7QGrg53b9o6spTyfZQ= X-Alimail-AntiSpam:AC=PASS;BC=-1|-1;BR=01201311R911e4;CH=green;DM=||false|;DS=||;FP=0|-1|-1|-1|0|-1|-1|-1;HT=ay29a033018046059;MF=baolin.wang@linux.alibaba.com;NM=1;PH=DS;RN=10;SR=0;TI=SMTPD_---0W1N-RDq_1709041953; Received: from localhost(mailfrom:baolin.wang@linux.alibaba.com fp:SMTPD_---0W1N-RDq_1709041953) by smtp.aliyun-inc.com; Tue, 27 Feb 2024 21:52:34 +0800 From: Baolin Wang To: akpm@linux-foundation.org Cc: muchun.song@linux.dev, osalvador@suse.de, david@redhat.com, linmiaohe@huawei.com, naoya.horiguchi@nec.com, mhocko@kernel.org, baolin.wang@linux.alibaba.com, linux-mm@kvack.org, linux-kernel@vger.kernel.org Subject: [PATCH 0/3] make the hugetlb migration strategy consistent Date: Tue, 27 Feb 2024 21:52:24 +0800 Message-Id: X-Mailer: git-send-email 2.39.3 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Rspamd-Server: rspam08 X-Rspamd-Queue-Id: ED7E820021 X-Stat-Signature: saapos6hsidy13da6w9n16wkgf7y79oi X-Rspam-User: X-HE-Tag: 1709041959-941740 X-HE-Meta: U2FsdGVkX18ep63ibSqGSCyIYfST8QXVUJR54mhWaSsQwh6eZJawdPOCuqopQlQ2a8g3jkEUy8b1LexQW77BRXM/XcFvpYLm+rp3TofOcKH2Y2dx7TEd6NzJeRb0pCCtekGxJbRHB6+220ACUSLqNiFb2ZkHJ2fqLOxkWbqORAMWA3E6YsEmqVo6nLpbUMAhKt/hMa4xVGLabRwf2wD5ApUTwh+B5YtnoszuNiM9838QYdnLRt8kkL0+sHBCmu7c/DdqdmqJS/obvWJLOO3Z3/9TWjYi36Anr/z7ZQKDN354OU3EP8l+8eDVE/Y6w8OEr8JstaWZC0U8UXnbXtkDFd5qdoNCTE9rJpgBx2CjjFa3Ytq5JxE7vBZYSX9e41Y+PZ7VxM4uUclKnT31pV5K/8C8nCo1Ki42voiWTKEZolBI9K4pdd1L3aNEUhLXsVo96Fbp4fQJ2d8EUozgTjxAs0DoOrUhyG6W8v32JhvG4zRSX6bXGviLovw7n1tCFAcganqfgxRp5TCHsgh+aC0Q6p7Bf//p0TMdDFZvlUNq7gAWFpG9zTnRlCMuA0Rsz7UrmymSXwNXj57Feb0SXowomRvpDTEuwcoMoN184ubo2gcEe+8LSbVXPXC46ciTDDANenG3ZJNxTRvLonelFfxVKHLUybKQfnsxLqe80ZZnkh6DihTudXKr8DS4a02HMMod3pRC5HJaw9yPttsf8LKtVWEApmxZDCm3DlJZO98Ygg5rVk6SEij0ojx/twNTNwoPkC1PVKYJUOzm/Ff/yyFIaX3n4vmEAFmNdHzSF52t+2ZH0zB4Ikf+vBSYtP/SN1d2Aus4rkMSY72oQ41JxNZhWsnKMf8fkolef5VQhz9z3FS/ufbCdKmur2JSybV1a09spvRZFRYu5W7gPj+opCb6xDPxLVrrZ3DI 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: Hi, As discussed in previous thread [1], there is an inconsistency when handling hugetlb migration. When handling the migration of freed hugetlb, it prevents fallback to other NUMA nodes in alloc_and_dissolve_hugetlb_folio(). However, when dealing with in-use hugetlb, it allows fallback to other NUMA nodes in alloc_hugetlb_folio_nodemask(), which can break the per-node hugetlb pool and might result in unexpected failures when node bound workloads doesn't get what is asssumed available. This patch set tries to make the hugetlb migration strategy more clear and consistent. Please find details in each patch. [1] https://lore.kernel.org/all/6f26ce22d2fcd523418a085f2c588fe0776d46e7.1706794035.git.baolin.wang@linux.alibaba.com/ Changes from RFC: - Move the gfp modification into alloc_migrate_hugetlb_folio(). - Add more comments. Baolin Wang (3): mm: record the migration reason for struct migration_target_control mm: hugetlb: make the hugetlb migration strategy consistent docs: hugetlbpage.rst: add hugetlb migration description Documentation/admin-guide/mm/hugetlbpage.rst | 7 ++++ include/linux/hugetlb.h | 4 +- mm/gup.c | 1 + mm/hugetlb.c | 39 ++++++++++++++++++-- mm/internal.h | 1 + mm/memory-failure.c | 1 + mm/memory_hotplug.c | 1 + mm/mempolicy.c | 3 +- mm/migrate.c | 3 +- mm/page_alloc.c | 1 + mm/vmscan.c | 3 +- 11 files changed, 55 insertions(+), 9 deletions(-) -- 2.39.3