I'm running the NUMA tests on 3.13 for some time now and it looks like
the change did not introduce any regression...

$ uname -a 
Linux sf00079894trusty 3.13.11-ckt22-201507231149 #2 SMP Thu Jul 23 13:45:04 
BRT 2015 x86_64 x86_64 x86_64 GNU/Linux 

I'm using a virtualized 16 Domains / 16 CPUs NUMA environment with the
stress test tool:

$ sudo numactl -H 
available: 16 nodes (0-15) 
node 0 cpus: 0 
node 0 size: 363 MB 
node 0 free: 23 MB 
node 1 cpus: 1 
node 1 size: 121 MB 
node 1 free: 7 MB 
node 2 cpus: 2 
node 2 size: 377 MB 
node 2 free: 23 MB 
node 3 cpus: 3 
node 3 size: 377 MB 
node 3 free: 23 MB 
node 4 cpus: 4 
node 4 size: 377 MB 
node 4 free: 23 MB 
node 5 cpus: 5 
node 5 size: 377 MB 
node 5 free: 23 MB 
node 6 cpus: 6 
node 6 size: 377 MB 
node 6 free: 35 MB 
node 7 cpus: 7 
node 7 size: 313 MB 
node 7 free: 19 MB 
node 8 cpus: 8 
node 8 size: 377 MB 
node 8 free: 61 MB 
node 9 cpus: 9 
node 9 size: 377 MB 
node 9 free: 57 MB 
node 10 cpus: 10 
node 10 size: 377 MB 
node 10 free: 63 MB 
node 11 cpus: 11 
node 11 size: 377 MB 
node 11 free: 30 MB 
node 12 cpus: 12 
node 12 size: 377 MB 
node 12 free: 67 MB 
node 13 cpus: 13 
node 13 size: 377 MB 
node 13 free: 68 MB 
node 14 cpus: 14 
node 14 size: 377 MB 
node 14 free: 68 MB 
node 15 cpus: 15 
node 15 size: 377 MB 
node 15 free: 64 MB 

$ sudo stress --vm 16 --vm-bytes 314572800 --vm-stride 1 --vm-keep &

Causing memory allocations of around 300MB on each node and "touching"
every byte of the allocation (causing all the pages to be "hot" on the
CPU running).

And generating concurrency:

$ sudo stress --cpu 16 &

So kernel scheduler has to migrate tasks, triggering the buggy logic's
fix. I can confirm the logic is being triggered by using ftrace:

$ sudo trace-cmd record -p function -l numa_migrate_preferred -l 
task_numa_migrate -l migrate_swap -l stop_two_cpus 
$ sudo trace-cmd report | grep stop_two_cpus | wc -l162 

And can't find any regression.

I'll let the tests to run a bit more and will suggest the fix to our
kernel team to merge it as a Stable Release Update for Trusty, Utopic
and Vivid.

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1461620

Title:
  NUMA task migration race condition due to stop task not being  checked
  when balancing happens

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1461620/+subscriptions

-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to