|
@@ -177,9 +177,9 @@ static void kasan_end_report(unsigned long *flags)
|
|
|
kasan_enable_current();
|
|
|
}
|
|
|
|
|
|
-static void print_track(struct kasan_track *track)
|
|
|
+static void print_track(struct kasan_track *track, const char *prefix)
|
|
|
{
|
|
|
- pr_err("PID = %u\n", track->pid);
|
|
|
+ pr_err("%s by task %u:\n", prefix, track->pid);
|
|
|
if (track->stack) {
|
|
|
struct stack_trace trace;
|
|
|
|
|
@@ -201,10 +201,8 @@ static void kasan_object_err(struct kmem_cache *cache, void *object)
|
|
|
if (!(cache->flags & SLAB_KASAN))
|
|
|
return;
|
|
|
|
|
|
- pr_err("Allocated:\n");
|
|
|
- print_track(&alloc_info->alloc_track);
|
|
|
- pr_err("Freed:\n");
|
|
|
- print_track(&alloc_info->free_track);
|
|
|
+ print_track(&alloc_info->alloc_track, "Allocated");
|
|
|
+ print_track(&alloc_info->free_track, "Freed");
|
|
|
}
|
|
|
|
|
|
void kasan_report_double_free(struct kmem_cache *cache, void *object,
|