Я хочу подать команду на резкое завершение работы системы, а затем ожидать увеличения счетчика Smartlog для небезопасного завершения работы. Согласно документации мне нужно установить бит shn равным 2 (10). Но этого невозможно достичь с помощью команды ioctl.
Код: Выделить всё
struct control_structure sht= {
.SHN = 2,
};
int res= ioctl(fd,NVME_SHUTDOWNS, &sht );
это возвращает -1. Я считаю, что это не так, как это может быть оформлено. Другой способ, о котором я думаю, — это использовать модуль ядра, но я не знаю, как действовать. Предоставьте предложения или любое решение.
Подробнее здесь:
https://stackoverflow.com/questions/783 ... with-ioctl