Hi Rafael, On Sun, Jun 3, 2018 at 1:05 AM, Rafael J. Wysocki <raf...@kernel.org> wrote: > On Sat, Jun 2, 2018 at 4:32 AM, Ravi Chandra Sadineni > <ravisadin...@chromium.org> wrote: >> Currently we show event_count instead of wakeup_count as part of per >> device wakeup_count sysfs attribute. Change it to wakeup_count to make >> it more meaningful. > > More information, please. > > In particular, why it is more meaningful. Wakeup_count increments only when events_check_enabled is set. This bool is set whenever we write current wakeup count to /sys/power/wakeup_count from the user land. Also events_check_enabled is cleared on every resume. My understanding is that, userland is expected to write to this just before suspend. This way pm_wakeup_event() when called from irqs will increment the wakeup_count only if we are in system wide suspend resume cycle and should give a fair approximation of how many times a device might have caused a wake from S3/S0iX. event_count on the other hand will increment every time pm_wakeup_event() is called irrespective of whether we are in a suspend/resume cycle. For example when I try doing something like this (https://lkml.org/lkml/2018/6/1/890), we see the wakeup_count sysfs attribute for the particular device incrementing every time there is a irq. If it is important to expose event_count via sysfs attribute, should we create another attribute ? Also we do expose each of these counters via debugfs(/sys/kernel/debug/wake_sources).
Please correct me if I am wrong or missing something. Also if there is a better way to do this, please let me know. > > Thanks, > Rafael