+ return -EINVAL;
+ if (!access_ok(VERIFY_WRITE, buf, size))
+ return -EFAULT;
+
+ if (!(file->f_flags & O_LARGEFILE)) {
+ if (*offset >= 0x7FFFFFFFull)
+ return -EFBIG;
+ if (*offset + size > 0x7FFFFFFFull)
+ size = 0x7FFFFFFFull - *offset;