kcsan: Remove kcsan_report_type
[linux-2.6-microblaze.git] / kernel / kcsan / report.c
index ba924f1..50cee23 100644 (file)
@@ -326,7 +326,6 @@ static void print_verbose_info(struct task_struct *task)
 }
 
 static void print_report(enum kcsan_value_change value_change,
-                        enum kcsan_report_type type,
                         const struct access_info *ai,
                         const struct other_info *other_info)
 {
@@ -343,7 +342,7 @@ static void print_report(enum kcsan_value_change value_change,
        if (skip_report(KCSAN_VALUE_CHANGE_TRUE, stack_entries[skipnr]))
                return;
 
-       if (type == KCSAN_REPORT_RACE_SIGNAL) {
+       if (other_info) {
                other_skipnr = get_stack_skipnr(other_info->stack_entries,
                                                other_info->num_stack_entries);
                other_frame = other_info->stack_entries[other_skipnr];
@@ -358,8 +357,7 @@ static void print_report(enum kcsan_value_change value_change,
 
        /* Print report header. */
        pr_err("==================================================================\n");
-       switch (type) {
-       case KCSAN_REPORT_RACE_SIGNAL: {
+       if (other_info) {
                int cmp;
 
                /*
@@ -371,22 +369,15 @@ static void print_report(enum kcsan_value_change value_change,
                       get_bug_type(ai->access_type | other_info->ai.access_type),
                       (void *)(cmp < 0 ? other_frame : this_frame),
                       (void *)(cmp < 0 ? this_frame : other_frame));
-       } break;
-
-       case KCSAN_REPORT_RACE_UNKNOWN_ORIGIN:
+       } else {
                pr_err("BUG: KCSAN: %s in %pS\n", get_bug_type(ai->access_type),
                       (void *)this_frame);
-               break;
-
-       default:
-               BUG();
        }
 
        pr_err("\n");
 
        /* Print information about the racing accesses. */
-       switch (type) {
-       case KCSAN_REPORT_RACE_SIGNAL:
+       if (other_info) {
                pr_err("%s to 0x%px of %zu bytes by %s on cpu %i:\n",
                       get_access_type(other_info->ai.access_type), other_info->ai.ptr,
                       other_info->ai.size, get_thread_desc(other_info->ai.task_pid),
@@ -404,16 +395,10 @@ static void print_report(enum kcsan_value_change value_change,
                pr_err("%s to 0x%px of %zu bytes by %s on cpu %i:\n",
                       get_access_type(ai->access_type), ai->ptr, ai->size,
                       get_thread_desc(ai->task_pid), ai->cpu_id);
-               break;
-
-       case KCSAN_REPORT_RACE_UNKNOWN_ORIGIN:
+       } else {
                pr_err("race at unknown origin, with %s to 0x%px of %zu bytes by %s on cpu %i:\n",
                       get_access_type(ai->access_type), ai->ptr, ai->size,
                       get_thread_desc(ai->task_pid), ai->cpu_id);
-               break;
-
-       default:
-               BUG();
        }
        /* Print stack trace of this thread. */
        stack_trace_print(stack_entries + skipnr, num_stack_entries - skipnr,
@@ -623,7 +608,7 @@ void kcsan_report_known_origin(const volatile void *ptr, size_t size, int access
         * be done once we know the full stack trace in print_report().
         */
        if (value_change != KCSAN_VALUE_CHANGE_FALSE)
-               print_report(value_change, KCSAN_REPORT_RACE_SIGNAL, &ai, other_info);
+               print_report(value_change, &ai, other_info);
 
        release_report(&flags, other_info);
 out:
@@ -640,7 +625,7 @@ void kcsan_report_unknown_origin(const volatile void *ptr, size_t size, int acce
        lockdep_off(); /* See kcsan_report_known_origin(). */
 
        raw_spin_lock_irqsave(&report_lock, flags);
-       print_report(KCSAN_VALUE_CHANGE_TRUE, KCSAN_REPORT_RACE_UNKNOWN_ORIGIN, &ai, NULL);
+       print_report(KCSAN_VALUE_CHANGE_TRUE, &ai, NULL);
        raw_spin_unlock_irqrestore(&report_lock, flags);
 
        lockdep_on();