diff --git a/kernel/events/core.c b/kernel/events/core.c index 3894309c41a26df635f53a61c5dcb041f7248df7..05affc3878ff931fbc475e86e8d0e8210c539d7e 100644 --- a/kernel/events/core.c +++ b/kernel/events/core.c @@ -3268,7 +3268,7 @@ void perf_event_update_userpage(struct perf_event *event) barrier(); userpg->index = perf_event_index(event); userpg->offset = perf_event_count(event); - if (event->state == PERF_EVENT_STATE_ACTIVE) + if (userpg->index) userpg->offset -= local64_read(&event->hw.prev_count); userpg->time_enabled = enabled +