All of lore.kernel.org
 help / color / mirror / Atom feed
* [Xenomai-core] xeno_panic_trace-v2
@ 2006-02-04 14:49 Jan Kiszka
  2006-02-04 15:29 ` Philippe Gerum
  0 siblings, 1 reply; 2+ messages in thread
From: Jan Kiszka @ 2006-02-04 14:49 UTC (permalink / raw)
  To: xenomai-core


[-- Attachment #1.1: Type: text/plain, Size: 187 bytes --]

Hi Philippe,

now I finally found the bug in my first version of this patch: some UVM
skin builds complained about an unknown symbol. Fixed now in this
version, please apply.

Jan

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1.2: xeno_panic_trace-v2.patch --]
[-- Type: text/x-patch; name="xeno_panic_trace-v2.patch", Size: 2248 bytes --]

Index: include/asm-uvm/system.h
===================================================================
--- include/asm-uvm/system.h	(Revision 528)
+++ include/asm-uvm/system.h	(Arbeitskopie)
@@ -767,4 +767,7 @@
 #define xnarch_post_graph(obj,state)
 #define xnarch_post_graph_if(obj,state,cond)
 
+/* Ipipe-tracer */
+#define ipipe_trace_panic_freeze()
+
 #endif /* !_XENO_ASM_UVM_SYSTEM_H */
Index: include/asm-generic/system.h
===================================================================
--- include/asm-generic/system.h	(Revision 528)
+++ include/asm-generic/system.h	(Arbeitskopie)
@@ -39,6 +39,13 @@
 #include <asm/xenomai/atomic.h>
 #include <nucleus/shadow.h>
 
+#ifdef CONFIG_IPIPE_TRACE
+#include <linux/ipipe_trace.h>
+#else /* !CONFIG_IPIPE_TRACE */
+#define ipipe_trace_panic_freeze()
+#define ipipe_trace_panic_dump()
+#endif /* CONFIG_IPIPE_TRACE */
+
 #define module_param_value(parm) (parm)
 
 typedef unsigned long spl_t;
@@ -185,6 +192,7 @@
     rthal_emergency_console(); \
     xnarch_logerr("fatal: %s\n",emsg); \
     show_stack(NULL,NULL);			\
+    ipipe_trace_panic_dump();			\
     for (;;) cpu_relax();			\
 } while(0)
 
Index: include/nucleus/types.h
===================================================================
--- include/nucleus/types.h	(Revision 528)
+++ include/nucleus/types.h	(Arbeitskopie)
@@ -107,8 +107,10 @@
 
 #define xnpod_fatal(format,args...) \
 do { \
-   const char *panic = xnpod_fatal_helper(format,##args); \
-   xnarch_halt(panic); \
+    const char *panic; \
+    ipipe_trace_panic_freeze(); \
+    panic = xnpod_fatal_helper(format,##args); \
+    xnarch_halt(panic); \
 } while (0)
 
 #if defined(__XENO_SIM__) || defined(__XENO_UVM__)
Index: ksrc/nucleus/shadow.c
===================================================================
--- ksrc/nucleus/shadow.c	(Revision 528)
+++ ksrc/nucleus/shadow.c	(Arbeitskopie)
@@ -1563,6 +1563,7 @@
 	    testbits(status,XNSTARTED) &&
 	    testbits(status,XNPEND))
 	    {
+	    ipipe_trace_panic_freeze();
 	    show_stack(xnthread_user_task(threadin),NULL);
             xnpod_fatal("blocked thread %s[%d] rescheduled?! (status=0x%lx, sig=%d, prev=%s[%d])",
 			threadin->name,

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 252 bytes --]

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

* Re: [Xenomai-core] xeno_panic_trace-v2
  2006-02-04 14:49 [Xenomai-core] xeno_panic_trace-v2 Jan Kiszka
@ 2006-02-04 15:29 ` Philippe Gerum
  0 siblings, 0 replies; 2+ messages in thread
From: Philippe Gerum @ 2006-02-04 15:29 UTC (permalink / raw)
  To: Jan Kiszka; +Cc: xenomai-core

Jan Kiszka wrote:
> Hi Philippe,
> 
> now I finally found the bug in my first version of this patch: some UVM
> skin builds complained about an unknown symbol. Fixed now in this
> version, please apply.

Applied, thanks.

> 
> Jan
> 
> 
> ------------------------------------------------------------------------
> 
> Index: include/asm-uvm/system.h
> ===================================================================
> --- include/asm-uvm/system.h	(Revision 528)
> +++ include/asm-uvm/system.h	(Arbeitskopie)
> @@ -767,4 +767,7 @@
>  #define xnarch_post_graph(obj,state)
>  #define xnarch_post_graph_if(obj,state,cond)
>  
> +/* Ipipe-tracer */
> +#define ipipe_trace_panic_freeze()
> +
>  #endif /* !_XENO_ASM_UVM_SYSTEM_H */
> Index: include/asm-generic/system.h
> ===================================================================
> --- include/asm-generic/system.h	(Revision 528)
> +++ include/asm-generic/system.h	(Arbeitskopie)
> @@ -39,6 +39,13 @@
>  #include <asm/xenomai/atomic.h>
>  #include <nucleus/shadow.h>
>  
> +#ifdef CONFIG_IPIPE_TRACE
> +#include <linux/ipipe_trace.h>
> +#else /* !CONFIG_IPIPE_TRACE */
> +#define ipipe_trace_panic_freeze()
> +#define ipipe_trace_panic_dump()
> +#endif /* CONFIG_IPIPE_TRACE */
> +
>  #define module_param_value(parm) (parm)
>  
>  typedef unsigned long spl_t;
> @@ -185,6 +192,7 @@
>      rthal_emergency_console(); \
>      xnarch_logerr("fatal: %s\n",emsg); \
>      show_stack(NULL,NULL);			\
> +    ipipe_trace_panic_dump();			\
>      for (;;) cpu_relax();			\
>  } while(0)
>  
> Index: include/nucleus/types.h
> ===================================================================
> --- include/nucleus/types.h	(Revision 528)
> +++ include/nucleus/types.h	(Arbeitskopie)
> @@ -107,8 +107,10 @@
>  
>  #define xnpod_fatal(format,args...) \
>  do { \
> -   const char *panic = xnpod_fatal_helper(format,##args); \
> -   xnarch_halt(panic); \
> +    const char *panic; \
> +    ipipe_trace_panic_freeze(); \
> +    panic = xnpod_fatal_helper(format,##args); \
> +    xnarch_halt(panic); \
>  } while (0)
>  
>  #if defined(__XENO_SIM__) || defined(__XENO_UVM__)
> Index: ksrc/nucleus/shadow.c
> ===================================================================
> --- ksrc/nucleus/shadow.c	(Revision 528)
> +++ ksrc/nucleus/shadow.c	(Arbeitskopie)
> @@ -1563,6 +1563,7 @@
>  	    testbits(status,XNSTARTED) &&
>  	    testbits(status,XNPEND))
>  	    {
> +	    ipipe_trace_panic_freeze();
>  	    show_stack(xnthread_user_task(threadin),NULL);
>              xnpod_fatal("blocked thread %s[%d] rescheduled?! (status=0x%lx, sig=%d, prev=%s[%d])",
>  			threadin->name,
> 
> 
> ------------------------------------------------------------------------
> 
> _______________________________________________
> Xenomai-core mailing list
> Xenomai-core@domain.hid
> https://mail.gna.org/listinfo/xenomai-core


-- 

Philippe.


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

end of thread, other threads:[~2006-02-04 15:29 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-02-04 14:49 [Xenomai-core] xeno_panic_trace-v2 Jan Kiszka
2006-02-04 15:29 ` Philippe Gerum

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.