Почему иногда процесс init читает / dev / initctl и возвращает -1? - PullRequest
0 голосов
/ 29 апреля 2020

Мы используем sysvinit для построения нашей системы. Когда я ввожу команду poweroff, иногда система не имеет никакого ответа.
Я провел некоторое исследование и обнаружил, что в функции check_init_fifo() из init строка:

n = read(pipe_fd, &request, sizeof(request));

иногда возвращает -1, и код ошибки EAGAIN.

Я изменил код инициализации и позволил ему повторить попытку 5 раз, когда код ошибки EAGAIN, но не работает должным образом.

Кто-нибудь знает, почему иногда read /dev/initctl возвращают -1? Как решить эту проблему?
Спасибо.

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