В некотором беспорядке мне нужно вызвать одну функцию ядра, которая не должна вызывать из пространства ядра, потому что в аргументе он берет буфер из выделенного пространства пользователя.Как выделить буфер пространства пользователя в драйвере ядра?
const char __user *buf
Но мне нужно назвать это так, как я могу выделить буфер пространства пользователя и передать его с помощью этих аргументов функции.
если возможно, тогда мне нужно сделать это без какого-либо взаимодействия с пользователем. Действительно ли это возможно?
Моя цель состоит в том, чтобы вызвать стандартную процедуру ядра с драйвером ядра, который принимает аргументы const char __user *buf
Вам действительно нужен буфер, который должен находиться в пользовательском пространстве, или вы просто хотите вызвать подпрограмму ядра, которая не представляет собой интерфейс для ячеек-ящиков. –
Мне нужно вызвать эту программу ядра, которая принимает аргументы «const char __user * buf» –
Если вам нужно сделать это, вы делаете это неправильно. – gby