aboutsummaryrefslogtreecommitdiff
path: root/tools/perf/scripts/python/arm-cs-trace-disasm.py
diff options
context:
space:
mode:
authorAlexei Starovoitov <[email protected]>2022-06-11 14:25:35 -0700
committerAlexei Starovoitov <[email protected]>2022-06-11 14:25:35 -0700
commitd5e9aeda81616150532b24277da2498ee52a2045 (patch)
tree8974d99ea9ec8751d0ff50f257b5e5206e740208 /tools/perf/scripts/python/arm-cs-trace-disasm.py
parentfe92833524e368e59bba9c57e00f7359f133667f (diff)
parent89eda98428ce10f8df110d60aa934aa5c5170686 (diff)
Merge branch 'Optimize performance of update hash-map when free is zero'
Feng zhou says: ==================== From: Feng Zhou <[email protected]> We encountered bad case on big system with 96 CPUs that alloc_htab_elem() would last for 1ms. The reason is that after the prealloc hashtab has no free elems, when trying to update, it will still grab spin_locks of all cpus. If there are multiple update users, the competition is very serious. 0001: Use head->first to check whether the free list is empty or not before taking the lock. 0002: Add benchmark to reproduce this worst case. Changelog: v5->v6: Addressed comments from Alexei Starovoitov. - Adjust the commit log. some details in here: https://lore.kernel.org/all/[email protected]/ v4->v5: Addressed comments from Alexei Starovoitov. - Use head->first. - Use cpu+max_entries. some details in here: https://lore.kernel.org/bpf/[email protected]/ v3->v4: Addressed comments from Daniel Borkmann. - Use READ_ONCE/WRITE_ONCE. some details in here: https://lore.kernel.org/all/[email protected]/ v2->v3: Addressed comments from Alexei Starovoitov, Andrii Nakryiko. - Adjust the way the benchmark is tested. - Adjust the code format. some details in here: https://lore.kernel.org/all/[email protected]/T/ v1->v2: Addressed comments from Alexei Starovoitov. - add a benchmark to reproduce the issue. - Adjust the code format that avoid adding indent. some details in here: https://lore.kernel.org/all/[email protected]/T/ ==================== Signed-off-by: Alexei Starovoitov <[email protected]>
Diffstat (limited to 'tools/perf/scripts/python/arm-cs-trace-disasm.py')
0 files changed, 0 insertions, 0 deletions