LINUX.ORG.RU

ioctl... как бы сделать такое...


0

0

Пользователь из user-space передаёт вместе с ioctl указатель на структуру. Одно из полей структуры - указатель на данные, другое - размер данных. Пользователь ничего не знает о размере данных, который ему вернёт ядро. Соответственно, надо на стороне ядра при обработке этого ioctl выделить память в user-space, а далее - copy_from_user... Как выделить память из ядра? Или может можно это как-нибудь красивее сделать?

anonymous

Флаг GFP_USER мне поможет? :)

anonymous
()
Ответ на: комментарий от klalafuda

А как поступать в таком случае? Два вызова - один размер данных возвращает, а второму подсовываем структуру с уже выделенной памятью???

anonymous
()
Ответ на: комментарий от anonymous

> А как поступать в таком случае? Два вызова - один размер данных возвращает, а второму подсовываем структуру с уже выделенной памятью???

вычёрпывать по кускам последовательностью вызовов? или отображать файл устройства в userland и читать из него.

// wbr

klalafuda ★☆☆
()
Ответ на: комментарий от klalafuda

Понятно... спасибо, в принципе разобрался как лучше сделать.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.