linux内核链表 - list_for_each_entry

时间:2015-04-05 08:35:12

标签: linux linked-list kernel

我希望使用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的论点有问题,但我不知道为什么。

请帮助我..

0 个答案:

没有答案
相关问题