Может ли обработчик ошибок страницы быть прерван в Linux? - PullRequest
0 голосов
/ 14 ноября 2018

Я изменяю функцию как do_anonymous_page в memory.c в ядре Linux, которая обрабатывает сбои страниц для анонимной памяти. У меня есть структура данных, которая будет обновляться на основе страниц, которые будут распределены. Однако мне потребуется блокировка этой структуры данных, чтобы только один процесс мог изменять ее одновременно. Я читал о спин-блокировках Linux (https://www.kernel.org/doc/Documentation/locking/spinlocks.txt)), и они предлагают примитивную версию для использования в обработчиках прерываний и версию «spin_lock», которую можно использовать в обработчиках без прерываний. Мой вопрос заключается в том, могу ли я использовать версию spin_lock вместо примитивной версии в обработчике ошибок страницы, например do_anonymous_page.

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