diff options
author | Martin KaFai Lau <kafai@fb.com> | 2017-01-16 22:17:29 -0800 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2017-01-17 15:39:39 -0500 |
commit | 3fbfadce6012e7bb384b2e9ad47869d5177f7209 (patch) | |
tree | c768617d6b7949b5b4bb75c6b2e58b08b4e1f6ea /kernel/smpboot.h | |
parent | d5ff72d9af73bc3cbaa3edb541333a851f8c7295 (diff) |
bpf: Fix test_lru_sanity5() in test_lru_map.c
test_lru_sanity5() fails when the number of online cpus
is fewer than the number of possible cpus. It can be
reproduced with qemu by using cmd args "--smp cpus=2,maxcpus=8".
The problem is the loop in test_lru_sanity5() is testing
'i' which is incorrect.
This patch:
1. Make sched_next_online() always return -1 if it cannot
find a next cpu to schedule the process.
2. In test_lru_sanity5(), the parent process does
sched_setaffinity() first (through sched_next_online())
and the forked process will inherit it according to
the 'man sched_setaffinity'.
Fixes: 5db58faf989f ("bpf: Add tests for the LRU bpf_htab")
Reported-by: Daniel Borkmann <daniel@iogearbox.net>
Signed-off-by: Martin KaFai Lau <kafai@fb.com>
Acked-by: Daniel Borkmann <daniel@iogearbox.net>
Acked-by: Alexei Starovoitov <ast@kernel.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'kernel/smpboot.h')
0 files changed, 0 insertions, 0 deletions