lkml.org 
[lkml]   [2020]   [Jul]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH smp 0/2] Provide CSD lock timeout diagnostics
Hello!

This is version 2 of a sneak preview of a series providing diagnostics
to help track down problems that would result in excessive csd_unlock()
latencies:

1. Add source and destination CPUs to __call_single_data.
I freely admit that I found the union declaration a
bit confusing!

2. Provide CSD lock timeout diagnostics.

3. Add "static" to a local variable.

Changes since v1:

o Fix stack-out-of-bounds read in csd_lock_record located by syzbot.

o Fix KASAN-detected use-after-free issue reported by Qian Cai.

o Fix botched nr_cpu_ids comparison reported by Dan Carpenter.

o Fix numerous issues reported by Peter Zijlstra, including
annoying CPP macros, #ifdef consolidation, another use-after-free
issue, memory-ordering/comment issues, {} code-style issues.

This now has no effect unless CONFIG_CSD_LOCK_WAIT_DEBUG=y.
It also uses NSEC_PER_MSEC instead of cubing 1000.
Times are now printed in nanoseconds instead of decimal seconds.
Switched to C-language Classic Comment style.
Moved to x-mas tree variable-declaration order from alphabetic.
Avoided two prints via "CPU-1".

o This version still "handles" 32-bit VDSO build errors by
prohibiting CONFIG_CSD_LOCK_WAIT_DEBUG=y in 32-bit builds.

Thanx, Paul

------------------------------------------------------------------------

include/linux/smp.h | 3 +
include/linux/smp_types.h | 3 +
kernel/smp.c | 136 +++++++++++++++++++++++++++++++++++++++++++++-
lib/Kconfig.debug | 11 +++
4 files changed, 152 insertions(+), 1 deletion(-)

\
 
 \ /
  Last update: 2020-07-28 01:54    [W:2.122 / U:0.068 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site