Re: [PATCH v7 3/5] mm/hugetlb: add support for mempolicy MPOL_PREFERRED_MANY
From: Michal Hocko <mhocko@suse.com>
Date: 2021-08-09 08:41:44
Also in:
linux-mm, lkml
On Mon 09-08-21 10:44:30, Feng Tang wrote:
Hi Michal, Thanks for the review and ACKs to 1/5 and 2/5 patches. On Fri, Aug 06, 2021 at 03:35:48PM +0200, Michal Hocko wrote:quoted
On Tue 03-08-21 13:59:20, Feng Tang wrote:quoted
From: Ben Widawsky <redacted> Implement the missing huge page allocation functionality while obeying the preferred node semantics. This is similar to the implementation for general page allocation, as it uses a fallback mechanism to try multiple preferred nodes first, and then all other nodes. [akpm: fix compling issue when merging with other hugetlb patch] [Thanks to 0day bot for catching the missing #ifdef CONFIG_NUMA issue] Link: https://lore.kernel.org/r/20200630212517.308045-12-ben.widawsky@intel.com (local) Suggested-by: Michal Hocko <mhocko@suse.com> Signed-off-by: Ben Widawsky <redacted> Co-developed-by: Feng Tang <redacted> Signed-off-by: Feng Tang <redacted>ifdefery is just ugly as hell. One way to get rid of that would be to provide a mpol_is_preferred_many() wrapper and hide the CONFIG_NUMA in mempolicy.h. I haven't checked but this might help to remove some other ifdefery as well. I especially dislike the label hidden in the ifdef. You can get rid of that by checking the page for NULL.Yes, the 'ifdef's were annoying to me too, and thanks for the suggestions. Following is the revised patch upon the suggestion. Thanks, Feng -------8<---------------------quoted
From fc30718c40f02ba5ea73456af49173e66b5032c1 Mon Sep 17 00:00:00 2001From: Ben Widawsky <redacted> Date: Thu, 5 Aug 2021 23:01:11 -0400 Subject: [PATCH] mm/hugetlb: add support for mempolicy MPOL_PREFERRED_MANY Implement the missing huge page allocation functionality while obeying the preferred node semantics. This is similar to the implementation for general page allocation, as it uses a fallback mechanism to try multiple preferred nodes first, and then all other nodes. To avoid adding too many "#ifdef CONFIG_NUMA" check, add a helper function in mempolicy.h to check whether a mempolicy is MPOL_PREFERRED_MANY. [akpm: fix compling issue when merging with other hugetlb patch] [Thanks to 0day bot for catching the !CONFIG_NUMA compiling issue] [Michal Hocko: suggest to remove the #ifdef CONFIG_NUMA check] Link: https://lore.kernel.org/r/20200630212517.308045-12-ben.widawsky@intel.com (local) Link: https://lkml.kernel.org/r/1627970362-61305-4-git-send-email-feng.tang@intel.com Suggested-by: Michal Hocko <mhocko@suse.com> Signed-off-by: Ben Widawsky <redacted> Co-developed-by: Feng Tang <redacted> Signed-off-by: Feng Tang <redacted>
Yeah. This looks much better. Thanks! Acked-by: Michal Hocko <mhocko@suse.com> Do you think you can provide same helpers for other policies as well? Maybe we can get rid of some other ifdefery as well. Thanks! -- Michal Hocko SUSE Labs