PaiMeiPetrovich писал(а): ↑28 авг 2022, 20:02
Может с помощью другой функции считывать из нода, но тогда странно, почему при первой итерации считалось...
Там много мусора ... я упростил этот код + исправил + отладил ... оставил только 2 файла для простоты.
Вот как это теперь работает:
Код: Выделить всё
olej@R420:~/2022/own.BOOKs/BHV.kernel/PaiMeiPetrovich$ sudo insmod mod_loop.ko
Код: Выделить всё
olej@R420:~/2022/own.BOOKs/BHV.kernel/PaiMeiPetrovich$ lsmod | head -n3
Module Size Used by
mod_loop 16384 0
vboxnetadp 28672 0
Код: Выделить всё
olej@R420:~/2022/own.BOOKs/BHV.kernel/PaiMeiPetrovich$ dmesg | tail -n2
[44272.014597] ! /proc/mod_loop directory created
[44272.014599] ! /proc/mod_loop/period created
Код: Выделить всё
olej@R420:~/2022/own.BOOKs/BHV.kernel/PaiMeiPetrovich$ cat /proc/mod_loop/period
5
Код: Выделить всё
olej@R420:~/2022/own.BOOKs/BHV.kernel/PaiMeiPetrovich$ dmesg | tail -n4
[44272.014597] ! /proc/mod_loop directory created
[44272.014599] ! /proc/mod_loop/period created
[44324.109546] ! return 1 bytes: <5>
[44324.109563] ! return EOF
Код: Выделить всё
olej@R420:~/2022/own.BOOKs/BHV.kernel/PaiMeiPetrovich$ echo 432 > /proc/mod_loop/period
Код: Выделить всё
olej@R420:~/2022/own.BOOKs/BHV.kernel/PaiMeiPetrovich$ dmesg | tail -n6
[43776.427616] ! /proc/mod_loop/period removed
[44272.014597] ! /proc/mod_loop directory created
[44272.014599] ! /proc/mod_loop/period created
[44324.109546] ! return 1 bytes: <5>
[44324.109563] ! return EOF
[44355.436670] ! write: 3 bytes - 432
Код: Выделить всё
olej@R420:~/2022/own.BOOKs/BHV.kernel/PaiMeiPetrovich$ cat /proc/mod_loop/period
432
Ошибочный ввод:
Код: Выделить всё
olej@R420:~/2022/own.BOOKs/BHV.kernel/PaiMeiPetrovich$ echo asdf > /proc/mod_loop/period
bash: echo: ошибка записи: Недопустимый аргумент
olej@R420:~/2022/own.BOOKs/BHV.kernel/PaiMeiPetrovich$ echo $?
1
А это нормально
:
Код: Выделить всё
olej@R420:~/2022/own.BOOKs/BHV.kernel/PaiMeiPetrovich$ echo 12345asdf > /proc/mod_loop/period
olej@R420:~/2022/own.BOOKs/BHV.kernel/PaiMeiPetrovich$ cat /proc/mod_loop/period
12345
Код: Выделить всё
olej@R420:~/2022/own.BOOKs/BHV.kernel/PaiMeiPetrovich$ sudo rmmod mod_loop