#multithreading #locking #ipc
#многопоточность #блокировка #ipc
Вопрос:
Может ли кто-нибудь объяснить о RTNL (rtnl_lock () rtnl_unlock ()) Я пробовал Google, но не смог много копать
Что я получил от net, так это RTNL — это Netlink, используемый для связи, такой как IPC bet user и пространство ядра, но я не получил больше, чем это
Я получил кое-что о spinlock (), например, почему spinlock лучше, чем semaphore, но не слишком много
Но было бы очень полезно, если бы кто-нибудь объяснил что-нибудь о RTNL
Любая ссылка для получения подробной информации будет высоко оценена.
Комментарии:
1. Этот вопрос кажется не по теме, потому что SO не является повторяющейся документацией и не является сайтом «gimme linkz».
Ответ №1:
Хотя и немного поздно, но это глобальная блокировка, которая защищает netdev от условий гонки, когда несколько пользователей пытаются ее изменить (например, одновременные изменения конфигурации в одном интерфейсе из пользовательского пространства).
На конференции netdev 2.2 (2017) есть доклад под названием RTNL mutex, большая блокировка ядра сетевого стека, в котором в основном объясняется все, что вам нужно знать об этом.