- if (*ppos >= bufsize)
- return 0;
-
- saldata = buf + file->f_pos;
- size = bufsize - file->f_pos;
- if (size > count)
- size = count;
- if (copy_to_user(buffer, saldata, size))
- return -EFAULT;
-
- *ppos += size;
- return size;
+ return simple_read_from_buffer(buffer, count, ppos, buf, bufsize);