我需要在将字符串c复制到buf之前将此用户空间缓冲区设置为零如何将缓冲区初始化为零。
static ssize_t myread(struct file *file,char __user *buf,size_t len, loff_t *fops)
{
printk(KERN_INFO"My read with length %d \n",len);
len = strlen(c);
if(copy_to_user(buf,c,len) != 0)
return -EFAULT;
else if (*fops > 0)
return 0;
else
*fops += len;
return len;
}
答案 0 :(得分:2)
使用memset
请参阅联机帮助页的使用方法,它将为一系列连续的buf addrs设置一个常量字节