Безопасен ли поток list.h ядра Linux? - PullRequest
5 голосов
/ 26 ноября 2009

Безопасен ли поток из linux-ядра list.h?

Ответы [ 2 ]

7 голосов
/ 26 ноября 2009

Нет, структура list_head не содержит никаких блокировок, и операции ни в коем случае не являются атомарными.

Вы можете сами убедиться в этом здесь , здесь нет упоминаний о механизмах блокировки и т. Д.

6 голосов
/ 26 ноября 2009

Просто прочитайте реализацию; Ответ явно НЕТ в присутствии авторов. (Несколько считывателей неизменяемых данных безопасны.)

Пол МакКенни дает введение в RCU по постоянно полезной LWN, из которой вы можете почерпнуть несколько советов по управлению потокобезопасными обновлениями в связанных списках. Конечно, ваше использование может быть достаточно простым, чтобы было достаточно спин-блокировки.

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