lkml.org 
[lkml]   [2021]   [Sep]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    Subject[PATCH 0/7] proc/stat: Maintain monotonicity of "intr" and "softirq"
    Date
    Here's a patch set that makes /proc/stat report total interrupt counts
    as monotonically increasing values, just like individual counters for
    interrupt types and CPUs are.

    This is as if the sum was a shared counter that all CPUs increment
    atomically together with their individual counters, with the sum
    correctly and expectedly wrapping around to zero once it reaches
    UINT_MAX.

    I've also added some documentation bits to codify this behavior and make
    it explicit that wrap-arounds must be expected and handled if userspace
    wants to maintain accurate total interrupt count for whatever reasons.

    Alexei Lozovsky (7):
    genirq: Use unsigned int for irqs_sum
    powerpc/irq: arch_irq_stat_cpu() returns unsigned int
    x86/irq: arch_irq_stat_cpu() returns unsigned int
    x86/irq: arch_irq_stat() returns unsigned int
    proc/stat: Use unsigned int for "intr" sum
    proc/stat: Use unsigned int for "softirq" sum
    docs: proc.rst: stat: Note the interrupt counter wrap-around

    Documentation/filesystems/proc.rst | 7 +++++++
    arch/powerpc/include/asm/hardirq.h | 2 +-
    arch/powerpc/kernel/irq.c | 4 ++--
    arch/x86/include/asm/hardirq.h | 4 ++--
    arch/x86/kernel/irq.c | 8 ++++----
    fs/proc/stat.c | 8 ++++----
    include/linux/kernel_stat.h | 2 +-
    7 files changed, 21 insertions(+), 14 deletions(-)

    --
    2.25.1

    \
     
     \ /
      Last update: 2021-09-11 05:48    [W:4.324 / U:0.024 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site