debug.h
上传用户:jlfgdled
上传日期:2013-04-10
资源大小:33168k
文件大小:1k
源码类别:

Linux/Unix编程

开发平台:

Unix_Linux

  1. /*
  2.  * Debug macros for run-time debugging.  Turned on/off with CONFIG_DEBUG option.
  3.  *
  4.  * Copyright (C) 2001 MontaVista Software Inc.
  5.  * Author: Jun Sun, jsun@mvista.com or jsun@junsun.net
  6.  *
  7.  * This program is free software; you can redistribute  it and/or modify it
  8.  * under  the terms of  the GNU General  Public License as published by the
  9.  * Free Software Foundation;  either version 2 of the  License, or (at your
  10.  * option) any later version.
  11.  *
  12.  */
  13. #ifndef _ASM_DEBUG_H
  14. #define _ASM_DEBUG_H
  15. #include <linux/config.h>
  16. /*
  17.  * run-time macros for catching spurious errors.  Eable CONFIG_DEBUG in
  18.  * kernel hacking config menu to use them.
  19.  *
  20.  * Use them as run-time debugging aid.  NEVER USE THEM AS ERROR HANDLING CODE!!!
  21.  */
  22. #ifdef CONFIG_DEBUG
  23. #include <linux/kernel.h>
  24. #define db_assert(x)  if (!(x)) { 
  25. panic("assertion failed at %s:%d: %sn", __FILE__, __LINE__, #x); }
  26. #define db_warn(x)  if (!(x)) { 
  27. printk(KERN_WARNING "warning at %s:%d: %sn", __FILE__, __LINE__, #x); }
  28. #define db_verify(x, y) db_assert(x y)
  29. #define db_verify_warn(x, y) db_warn(x y)
  30. #define db_run(x)  do { x; } while (0)
  31. #else
  32. #define db_assert(x)
  33. #define db_warn(x)
  34. #define db_verify(x, y) x
  35. #define db_verify_warn(x, y) x
  36. #define db_run(x)
  37. #endif
  38. #endif /* _ASM_DEBUG_H */