2016-03-08 7 views
-1

Можете ли вы объяснить мне этот фрагмент кода? что здесь означает __user?макрос в аргументе функции

int create(struct mystruct __user *arg) { 
    void __user *user_config; 
} 

(я только вывешиваем часть функции) Любой ответ высоко ценится. Спасибо.

+2

Если искали [это] (http://stackoverflow.com/q/4521551/2173917)? –

+0

Вы правы. Большое спасибо. Я не знал, где искать :( –

+0

Вы не смогли ввести 'linux __user' в маске поиска google? Первый результат - это dup. Если бы это не было обидно, я бы спросил, являетесь ли вы политиком. – Olaf

ответ

2

Он сообщает разработчикам ядра, что указатель предоставляется пользователю, поэтому ему не следует доверять и его нужно проверять перед началом работы.

Существует много таких определений в ядре Linux.

https://en.wikipedia.org/wiki/Sparse#Linux_kernel_definitions

+0

Просто спрашивая, почему этот обман, который я указал, не охватывал это? –

Смежные вопросы