summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--include/linux/perf_event.h6
-rw-r--r--kernel/events/core.c2
2 files changed, 4 insertions, 4 deletions
diff --git a/include/linux/perf_event.h b/include/linux/perf_event.h
index 8f4a70f2eca8..e56b07f5c9b6 100644
--- a/include/linux/perf_event.h
+++ b/include/linux/perf_event.h
@@ -319,10 +319,8 @@ struct perf_event {
*/
struct list_head migrate_entry;
- union {
- struct hlist_node hlist_entry;
- struct list_head active_entry;
- };
+ struct hlist_node hlist_entry;
+ struct list_head active_entry;
int nr_siblings;
int group_flags;
struct perf_event *group_leader;
diff --git a/kernel/events/core.c b/kernel/events/core.c
index 89d34f9bb8cb..c3b6c2799f34 100644
--- a/kernel/events/core.c
+++ b/kernel/events/core.c
@@ -6670,6 +6670,8 @@ perf_event_alloc(struct perf_event_attr *attr, int cpu,
INIT_LIST_HEAD(&event->sibling_list);
INIT_LIST_HEAD(&event->rb_entry);
INIT_LIST_HEAD(&event->active_entry);
+ INIT_HLIST_NODE(&event->hlist_entry);
+
init_waitqueue_head(&event->waitq);
init_irq_work(&event->pending, perf_pending_event);