aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIngo Molnar <mingo@elte.hu>2008-12-29 10:03:40 -0500
committerIngo Molnar <mingo@elte.hu>2008-12-30 00:57:11 -0500
commit7a51cffbd10886c0557677dd916c090097c691ef (patch)
treed5210fb96acf37271285d2375f16e244d6fae71b
parent2a38b1c4f123afa4579cb1d29380b337e9195cbb (diff)
relayfs: replace BUG() with WARN_ON() in relay_late_setup_files()
Impact: turn boot crash into boot warning This BUG() can trigger: [ 16.684131] initcall fail_page_alloc_debugfs+0x0/0xc1 returned 0 after 0 usecs [ 16.692035] calling kmemtrace_setup_late+0x0/0xd5 @ 1 [ 16.700087] relay_late_setup_files: CPU 1 has no buffer, it must have! [ 16.704044] ------------[ cut here ]------------ [ 16.708030] kernel BUG at kernel/relay.c:680! [ 16.708030] invalid opcode: 0000 [#1] SMP DEBUG_PAGEALLOC [ 16.708030] last sysfs file: [ 16.708030] [ 16.708030] Pid: 1, comm: swapper Not tainted (2.6.28-tip-03903-g9a39f58-dirty #13207) System Product Name [ 16.708030] EIP: 0060:[<c01604ae>] EFLAGS: 00010246 CPU: 1 [ 16.708030] EIP is at relay_late_setup_files+0x8c/0x176 Reduce it to a more reportable WARN_ONCE(). Signed-off-by: Ingo Molnar <mingo@elte.hu>
-rw-r--r--kernel/relay.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/kernel/relay.c b/kernel/relay.c
index 09ac2008f77b..d06450670c86 100644
--- a/kernel/relay.c
+++ b/kernel/relay.c
@@ -675,9 +675,7 @@ int relay_late_setup_files(struct rchan *chan,
675 */ 675 */
676 for_each_online_cpu(i) { 676 for_each_online_cpu(i) {
677 if (unlikely(!chan->buf[i])) { 677 if (unlikely(!chan->buf[i])) {
678 printk(KERN_ERR "relay_late_setup_files: CPU %u " 678 WARN_ONCE(1, KERN_ERR "CPU has no buffer!\n");
679 "has no buffer, it must have!\n", i);
680 BUG();
681 err = -EINVAL; 679 err = -EINVAL;
682 break; 680 break;
683 } 681 }