Использование DebugFS со строками в ядре LinuxLinux

Ответить
Anonymous
 Использование DebugFS со строками в ядре Linux

Сообщение Anonymous »

Я разрабатываю модуль ядра Linux, который использует DebugFS для чтения некоторых значений из файлов в пространстве пользователя в пространство ядра.
На данный момент у меня есть каталог DebugFS в /sys/kernel/ отладка/пример. Этот каталог содержит набор файлов, привязанных к переменным u32_t. Я могу читать значения из этих файлов и присваивать их переменным u32_t в моем модуле ядра.
Я хочу прочитать некоторые символы ASCII из файла DebugFS и назначить их произвольному символу char[] длина. Однако (насколько я видел) документация DebugFS не содержит каких-либо функций специально для этой цели.
Текущий код создает файл «пример» в /sys/kernel/debug/ и связывает hello с любым 32-битным беззнаковым целым числом в этом файле:

static u32 hello = 0;

int init_module(void)
{
struct dentry *junk;

dir = debugfs_create_dir("example", 0);
if (!dir) {
printk(KERN_ALERT "Failed to create /sys/kernel/debug/example\n");
return -1;
}

junk = debugfs_create_u32("hello", 0666, dir, &hello);
if (!junk) {
printk(KERN_ALERT "Failed to create /sys/kernel/debug/example/hello\n");
return -1;
}

return 0;
}

void cleanup_module(void)
{
debugfs_remove_recursive(dir);
}


Подробнее здесь: https://stackoverflow.com/questions/784 ... nux-kernel
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Linux»