Skip to content

Commit

Permalink
[PATCH] lockdep: print kernel version
Browse files Browse the repository at this point in the history
Lets do the same thing we do for oopses - print out the version in the
report.  It's an extra line of output though.  We could tack it on the end
of the INFO: lines, but that screws up Ingo's pretty output.

Signed-off-by: Dave Jones <[email protected]>
Cc: Ingo Molnar <[email protected]>
Cc: Arjan van de Ven <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
  • Loading branch information
Dave Jones authored and Linus Torvalds committed Sep 29, 2006
1 parent 2b33b4d commit 99de055
Showing 1 changed file with 13 additions and 0 deletions.
13 changes: 13 additions & 0 deletions kernel/lockdep.c
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@
#include <linux/stacktrace.h>
#include <linux/debug_locks.h>
#include <linux/irqflags.h>
#include <linux/utsname.h>

#include <asm/sections.h>

Expand Down Expand Up @@ -515,6 +516,13 @@ print_circular_bug_entry(struct lock_list *target, unsigned int depth)
return 0;
}

static void print_kernel_version(void)
{
printk("%s %.*s\n", system_utsname.release,
(int)strcspn(system_utsname.version, " "),
system_utsname.version);
}

/*
* When a circular dependency is detected, print the
* header first:
Expand All @@ -531,6 +539,7 @@ print_circular_bug_header(struct lock_list *entry, unsigned int depth)

printk("\n=======================================================\n");
printk( "[ INFO: possible circular locking dependency detected ]\n");
print_kernel_version();
printk( "-------------------------------------------------------\n");
printk("%s/%d is trying to acquire lock:\n",
curr->comm, curr->pid);
Expand Down Expand Up @@ -712,6 +721,7 @@ print_bad_irq_dependency(struct task_struct *curr,
printk("\n======================================================\n");
printk( "[ INFO: %s-safe -> %s-unsafe lock order detected ]\n",
irqclass, irqclass);
print_kernel_version();
printk( "------------------------------------------------------\n");
printk("%s/%d [HC%u[%lu]:SC%u[%lu]:HE%u:SE%u] is trying to acquire:\n",
curr->comm, curr->pid,
Expand Down Expand Up @@ -793,6 +803,7 @@ print_deadlock_bug(struct task_struct *curr, struct held_lock *prev,

printk("\n=============================================\n");
printk( "[ INFO: possible recursive locking detected ]\n");
print_kernel_version();
printk( "---------------------------------------------\n");
printk("%s/%d is trying to acquire lock:\n",
curr->comm, curr->pid);
Expand Down Expand Up @@ -1375,6 +1386,7 @@ print_irq_inversion_bug(struct task_struct *curr, struct lock_class *other,

printk("\n=========================================================\n");
printk( "[ INFO: possible irq lock inversion dependency detected ]\n");
print_kernel_version();
printk( "---------------------------------------------------------\n");
printk("%s/%d just changed the state of lock:\n",
curr->comm, curr->pid);
Expand Down Expand Up @@ -1469,6 +1481,7 @@ print_usage_bug(struct task_struct *curr, struct held_lock *this,

printk("\n=================================\n");
printk( "[ INFO: inconsistent lock state ]\n");
print_kernel_version();
printk( "---------------------------------\n");

printk("inconsistent {%s} -> {%s} usage.\n",
Expand Down

0 comments on commit 99de055

Please sign in to comment.