在调试驱动程序的时候,有时候必须用dmesg来看调试信息,特别是伪终端登录的时候。如何让可以在伪终端打印出调试信息呢?
我用的方式是自己写个printk.见代码如下:
static void print_string(const char* str )
#define myprintk(format,args...) { \
char string[200]; \
sprintf(string, format, ##args); \
print_string( string ); \
}
static void print_string(const char* str )
{
struct tty_struct *my_tty;
// char str[200];
// va_list
my_tty = current->signal->tty;
// va_start( )
if ( my_tty != NULL )
{
my_tty->driver->ops->write(my_tty, str, strlen(str) );
my_tty->driver->ops->write(my_tty, "\015\013", 2 );
}
}