lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  PHC 
Open Source and information security mailing list archives
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Thu, 03 Dec 2020 09:49:02 +0800
From:   "Huang\, Ying" <>
To:     Mel Gorman <>
Cc:     Peter Zijlstra <>, <>,
        "Matthew Wilcox \(Oracle\)" <>,
        Rafael Aquini <>,
        Andrew Morton <>,
        Ingo Molnar <>,
        Rik van Riel <>,
        Johannes Weiner <>,
        Dave Hansen <>,
        Andi Kleen <>,
        Michal Hocko <>,
        David Rientjes <>,
Subject: Re: [PATCH -V6 RESEND 2/3] NOT kernel/man-pages: man2/set_mempolicy.2: Add mode flag MPOL_F_NUMA_BALANCING

Mel Gorman <> writes:

> On Wed, Dec 02, 2020 at 04:42:33PM +0800, Huang Ying wrote:
>> Signed-off-by: "Huang, Ying" <>
>> ---
>>  man2/set_mempolicy.2 | 9 +++++++++
>>  1 file changed, 9 insertions(+)
>> diff --git a/man2/set_mempolicy.2 b/man2/set_mempolicy.2
>> index 68011eecb..3754b3e12 100644
>> --- a/man2/set_mempolicy.2
>> +++ b/man2/set_mempolicy.2
>> @@ -113,6 +113,12 @@ A nonempty
>>  .I nodemask
>>  specifies node IDs that are relative to the set of
>>  node IDs allowed by the process's current cpuset.
>> +.TP
>> +.BR MPOL_F_NUMA_BALANCING " (since Linux 5.11)"
>> +Enable the Linux kernel NUMA balancing for the task if it is supported
>> +by kernel.
>> +If the flag isn't supported by Linux kernel, return -1 and errno is
>> +set to EINVAL.
>>  .PP
>>  .I nodemask
>>  points to a bit mask of node IDs that contains up to
>> @@ -293,6 +299,9 @@ argument specified both
> Should this be expanded more to clarify it applies to MPOL_BIND
> specifically?
> Maybe the first patch should be expanded more and explictly fail if
> MPOL_F_NUMA_BALANCING is used with anything other than MPOL_BIND?

For MPOL_PREFERRED, why could we not use NUMA balancing to migrate pages
to the accessing local node if it is same as the preferred node?  We
have a way to turn off NUMA balancing already, why could we not provide
a way to enable it if that's intended?

Even for MPOL_INTERLEAVE, if the target node is the same as the
accessing local node, can we use NUMA balancing to migrate pages?

So, I prefer to make MPOL_F_NUMA_BALANCING to be

  Optimizing with NUMA balancing if possible, and we may add more
  optimization in the future.

Do you agree?

Best Regards,
Huang, Ying

>>  and
>> +Or, the
>> +isn't supported by the Linux kernel.
> This will be difficult for an app to distinguish but we can't go back in
> time and make this ENOSYS :(
> The linux-api people might have more guidance but it may go to the
> extent of including a small test program in the manual page for a
> sequence that tests whether MPOL_F_NUMA_BALANCING works. They might have
> a better recommendation on how it should be handled.

Powered by blists - more mailing lists