linux驱动调试技术


对于驱动程序设计来说,核心问题之一就是如何完成调试。当前常用的驱动调试技术可分为:
打印调试(printk)
调试器调试(kgdb)
查询调试

1、合理使用printk

#ifdef PDEBUG
#define PLOG(fmt,args...) printk(KERN_DEBUG "scull:"fmt,##args)
#else
#define PLOG(fmt,args...) /*do nothing */
#endif

Makefile作如下修改:
DEBUG =y
ifeq ($(DEBUG),y)
DEBFLAGS =-O2 -g -D PDEBUG //类似define
else
DEBFLAGS =-O2
endif
CFLAGS +=$(DEBFLAGS)

相关内容