我希望使用list_for_each_entry查看列表中的内容,但我无法做到。
我就像这样定义了message_list和channel。
typedef struct message_list{
struct list_head msg_list;
char* msg;
int len;
}message_list;
typedef struct channel{
int p_cnt; // need to be initialized
pid_t pid[2]; // need to be initialized
message_list path0; //pid[0] use this path when he sends messages
message_list path1; //pid[1] use this path when he sends messages
}channel;
我写这段代码进行测试。
list_for_each_entry(tmp, &chs[ch].path1.msg_list, msg_list){
printk("msg[%s]\n", tmp->msg);
}
但它没有用。我认为list_for_each_entry的论点有问题,但我不知道为什么。
请帮助我..