Merge tag 'mfd-next-5.15' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd
[linux-2.6-microblaze.git] / kernel / trace / trace_events_trigger.c
index 6b11e33..3d5c072 100644 (file)
@@ -124,6 +124,18 @@ static void *trigger_next(struct seq_file *m, void *t, loff_t *pos)
        return seq_list_next(t, &event_file->triggers, pos);
 }
 
+static bool check_user_trigger(struct trace_event_file *file)
+{
+       struct event_trigger_data *data;
+
+       list_for_each_entry_rcu(data, &file->triggers, list) {
+               if (data->flags & EVENT_TRIGGER_FL_PROBE)
+                       continue;
+               return true;
+       }
+       return false;
+}
+
 static void *trigger_start(struct seq_file *m, loff_t *pos)
 {
        struct trace_event_file *event_file;
@@ -134,7 +146,7 @@ static void *trigger_start(struct seq_file *m, loff_t *pos)
        if (unlikely(!event_file))
                return ERR_PTR(-ENODEV);
 
-       if (list_empty(&event_file->triggers))
+       if (list_empty(&event_file->triggers) || !check_user_trigger(event_file))
                return *pos == 0 ? SHOW_AVAILABLE_TRIGGERS : NULL;
 
        return seq_list_start(&event_file->triggers, *pos);