All of lore.kernel.org
 help / color / mirror / Atom feed
* [Adeos-main] [pull request] Avoid double bug reports
@ 2009-12-11 11:51 Jan Kiszka
  2009-12-11 13:32 ` Gilles Chanteperdrix
  0 siblings, 1 reply; 3+ messages in thread
From: Jan Kiszka @ 2009-12-11 11:51 UTC (permalink / raw)
  To: Philippe Gerum; +Cc: adeos-main

The following changes since commit 88fd7426f3565647b4f5ef93d8e612e059dae873:
  Philippe Gerum (1):
        Make generic atomic ops Adeos-aware

are available in the git repository at:

  git://git.kiszka.org/ipipe-2.6.git queues/2.6.31-noarch

Jan Kiszka (2):
      noarch: Don't check for internal errors during oops
      noarch: Set oops_in_progress on failing context check

 kernel/ipipe/core.c |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

-------

noarch: Don't check for internal errors during oops

We are busted already, verifying the context here only generates
confusing output or causes even more corruptions.

Signed-off-by: Jan Kiszka <jan.kiszka@domain.hid>
---
 kernel/ipipe/core.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/kernel/ipipe/core.c b/kernel/ipipe/core.c
index ffaceaa..c9bc5b4 100644
--- a/kernel/ipipe/core.c
+++ b/kernel/ipipe/core.c
@@ -312,7 +312,7 @@ void __ipipe_unstall_root(void)
 
 #ifdef CONFIG_IPIPE_DEBUG_INTERNAL
 	/* This helps catching bad usage from assembly call sites. */
-	BUG_ON(!__ipipe_root_domain_p);
+	BUG_ON(!__ipipe_root_domain_p && !oops_in_progress);
 #endif
 
 	p = ipipe_root_cpudom_ptr();
@@ -328,7 +328,7 @@ void __ipipe_unstall_root(void)
 void __ipipe_restore_root(unsigned long x)
 {
 #ifdef CONFIG_IPIPE_DEBUG_INTERNAL
-	BUG_ON(!ipipe_root_domain_p);
+	BUG_ON(!ipipe_root_domain_p && !oops_in_progress);
 #endif
 
 	if (x)
-- 
1.6.0.2

------

noarch: Set oops_in_progress on failing context check

This helps to avoid raising multiple bugs that may even precede the
actually issue in the output.

Signed-off-by: Jan Kiszka <jan.kiszka@domain.hid>
---
 kernel/ipipe/core.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/kernel/ipipe/core.c b/kernel/ipipe/core.c
index c9bc5b4..aa2e5a0 100644
--- a/kernel/ipipe/core.c
+++ b/kernel/ipipe/core.c
@@ -1676,7 +1676,7 @@ void ipipe_check_context(struct ipipe_domain *border_domain)
 
 	ipipe_context_check_off();
 	ipipe_trace_panic_freeze();
-	ipipe_set_printk_sync(__ipipe_current_domain);
+	oops_in_progress = 1;
 
 	if (this_domain->priority > border_domain->priority)
 		printk(KERN_ERR "I-pipe: Detected illicit call from domain "
-- 
1.6.0.2


^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2009-12-11 13:46 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-12-11 11:51 [Adeos-main] [pull request] Avoid double bug reports Jan Kiszka
2009-12-11 13:32 ` Gilles Chanteperdrix
2009-12-11 13:46   ` Jan Kiszka

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.