Удаление заголовка списка в ядре Linux - PullRequest
0 голосов
/ 28 ноября 2018

Мы разрабатываем устройство ядра.В устройстве есть список, в котором хранятся сообщения.Мы хотим удалить заголовок списка.Соответствующая часть кода приведена ниже:

Сообщение устройства и структура устройства:

typedef struct dev_message
{
    char *data;
    int *message_count;
    struct list_head list;
}device_message;


typedef struct queue_dev
{
    device_message *message_head;
    struct semaphore sem;
    struct cdev cdev;
}queue_device;

Добавление в начало списка осуществляется с помощью

INIT_LIST_HEAD(&(dev->message_head->list));

и добавлениемостальные записи выполняются с помощью

list_add_tail(&newMsg->list,&dev->message_head->list);

. Мы можем удалить каждый элемент списка, кроме заголовка списка.Как мы можем удалить единственную главу списка?Искренне.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...