【发布时间】:2015-01-13 23:30:31
【问题描述】:
我正在尝试使用此功能将缓冲区从用户复制到内核中的一个。
两个缓冲区都已分配。我正在使用while,以防在第一次尝试时并非所有字节都被复制。但由于某种原因,没有复制任何内容,程序卡在 while 循环中。
这可能是什么原因?
void my_copy_from_user(const char* source_buff, char* dest_buff, int size_to_copy){
int not_copied = size_to_copy
int left = size_to_copy;
while( not_copied ){
not_copied = copy_from_user(dest_buff, source_buff, left);
dest_buff += (left - not_copied);
source_buff += (left - not_copied);
left = not_copied;
}
}
【问题讨论】: