• Anna-Maria Gleixner's avatar
    timer/trace: Improve timer tracing · f28d3d53
    Anna-Maria Gleixner authored
    Timers are added to the timer wheel off by one. This is required in
    case a timer is queued directly before incrementing jiffies to prevent
    early timer expiry.
    
    When reading a timer trace and relying only on the expiry time of the timer
    in the timer_start trace point and on the now in the timer_expiry_entry
    trace point, it seems that the timer fires late. With the current
    timer_expiry_entry trace point information only now=jiffies is printed but
    not the value of base->clk. This makes it impossible to draw a conclusion
    to the index of base->clk and makes it impossible to examine timer problems
    without additional trace points.
    
    Therefore add the base->clk value to the timer_expire_entry trace
    point, to be able to calculate the index the timer base is located at
    during collecting expired timers.
    Signed-off-by: default avatarAnna-Maria Gleixner <anna-maria@linutronix.de>
    Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
    Cc: fweisbec@gmail.com
    Cc: peterz@infradead.org
    Cc: Steven Rostedt <rostedt@goodmis.org>
    Link: https://lkml.kernel.org/r/20190321120921.16463-5-anna-maria@linutronix.de
    f28d3d53
timer.c 57.1 KB