Lines Matching refs:event
291 static unsigned long event_24x7_request(struct perf_event *event, u64 *res, in event_24x7_request() argument
294 return single_24x7_request(event_get_domain(event), in event_24x7_request()
295 event_get_offset(event), in event_24x7_request()
296 event_get_starting_index(event), in event_24x7_request()
297 event_get_lpar(event), in event_24x7_request()
302 static int h_24x7_event_init(struct perf_event *event) in h_24x7_event_init() argument
310 if (event->attr.type != event->pmu->type) in h_24x7_event_init()
314 if (event_get_reserved1(event) || in h_24x7_event_init()
315 event_get_reserved2(event) || in h_24x7_event_init()
316 event_get_reserved3(event)) { in h_24x7_event_init()
318 event->attr.config, in h_24x7_event_init()
319 event_get_reserved1(event), in h_24x7_event_init()
320 event->attr.config1, in h_24x7_event_init()
321 event_get_reserved2(event), in h_24x7_event_init()
322 event->attr.config2, in h_24x7_event_init()
323 event_get_reserved3(event)); in h_24x7_event_init()
328 if (event->attr.exclude_user || in h_24x7_event_init()
329 event->attr.exclude_kernel || in h_24x7_event_init()
330 event->attr.exclude_hv || in h_24x7_event_init()
331 event->attr.exclude_idle || in h_24x7_event_init()
332 event->attr.exclude_host || in h_24x7_event_init()
333 event->attr.exclude_guest) in h_24x7_event_init()
337 if (has_branch_stack(event)) in h_24x7_event_init()
341 if (event_get_offset(event) % 8) { in h_24x7_event_init()
347 domain = event_get_domain(event); in h_24x7_event_init()
361 (event_get_lpar(event) != event_get_lpar_max()))) { in h_24x7_event_init()
364 event_get_lpar(event)); in h_24x7_event_init()
369 if (event_24x7_request(event, &ct, false)) { in h_24x7_event_init()
377 static u64 h_24x7_get_value(struct perf_event *event) in h_24x7_get_value() argument
381 ret = event_24x7_request(event, &ct, true); in h_24x7_get_value()
389 static void h_24x7_event_update(struct perf_event *event) in h_24x7_event_update() argument
393 now = h_24x7_get_value(event); in h_24x7_event_update()
394 prev = local64_xchg(&event->hw.prev_count, now); in h_24x7_event_update()
395 local64_add(now - prev, &event->count); in h_24x7_event_update()
398 static void h_24x7_event_start(struct perf_event *event, int flags) in h_24x7_event_start() argument
401 local64_set(&event->hw.prev_count, h_24x7_get_value(event)); in h_24x7_event_start()
404 static void h_24x7_event_stop(struct perf_event *event, int flags) in h_24x7_event_stop() argument
406 h_24x7_event_update(event); in h_24x7_event_stop()
409 static int h_24x7_event_add(struct perf_event *event, int flags) in h_24x7_event_add() argument
412 h_24x7_event_start(event, flags); in h_24x7_event_add()