Lines Matching defs:pos
361 loff_t pos = *ppos;
363 if (unlikely(pos < 0)) {
366 if (count >= -pos) /* both values are in 0..LLONG_MAX */
368 } else if (unlikely((loff_t) (pos + count) < 0)) {
404 ssize_t __kernel_read(struct file *file, void *buf, size_t count, loff_t *pos)
426 kiocb.ki_pos = pos ? *pos : 0;
430 if (pos)
431 *pos = kiocb.ki_pos;
439 ssize_t kernel_read(struct file *file, void *buf, size_t count, loff_t *pos)
443 ret = rw_verify_area(READ, file, pos, count);
446 return __kernel_read(file, buf, count, pos);
450 ssize_t vfs_read(struct file *file, char __user *buf, size_t count, loff_t *pos)
461 ret = rw_verify_area(READ, file, pos, count);
468 ret = file->f_op->read(file, buf, count, pos);
470 ret = new_sync_read(file, buf, count, pos);
499 ssize_t __kernel_write_iter(struct file *file, struct iov_iter *from, loff_t *pos)
516 kiocb.ki_pos = pos ? *pos : 0;
519 if (pos)
520 *pos = kiocb.ki_pos;
529 ssize_t __kernel_write(struct file *file, const void *buf, size_t count, loff_t *pos)
537 return __kernel_write_iter(file, &iter, pos);
549 loff_t *pos)
553 ret = rw_verify_area(WRITE, file, pos, count);
558 ret = __kernel_write(file, buf, count, pos);
564 ssize_t vfs_write(struct file *file, const char __user *buf, size_t count, loff_t *pos)
575 ret = rw_verify_area(WRITE, file, pos, count);
582 ret = file->f_op->write(file, buf, count, pos);
584 ret = new_sync_write(file, buf, count, pos);
608 loff_t pos, *ppos = file_ppos(f.file);
610 pos = *ppos;
611 ppos = &pos;
615 f.file->f_pos = pos;
632 loff_t pos, *ppos = file_ppos(f.file);
634 pos = *ppos;
635 ppos = &pos;
639 f.file->f_pos = pos;
653 loff_t pos)
658 if (pos < 0)
665 ret = vfs_read(f.file, buf, count, &pos);
673 size_t, count, loff_t, pos)
675 return ksys_pread64(fd, buf, count, pos);
680 size_t, count, compat_arg_u64_dual(pos))
682 return ksys_pread64(fd, buf, count, compat_arg_u64_glue(pos));
687 size_t count, loff_t pos)
692 if (pos < 0)
699 ret = vfs_write(f.file, buf, count, &pos);
707 size_t, count, loff_t, pos)
709 return ksys_pwrite64(fd, buf, count, pos);
714 size_t, count, compat_arg_u64_dual(pos))
716 return ksys_pwrite64(fd, buf, count, compat_arg_u64_glue(pos));
777 loff_t *pos, rwf_t flags)
790 ret = rw_verify_area(READ, file, pos, tot_len);
795 ret = do_iter_readv_writev(file, iter, pos, READ, flags);
797 ret = do_loop_readv_writev(file, iter, pos, READ, flags);
842 loff_t *pos, rwf_t flags)
855 ret = rw_verify_area(WRITE, file, pos, tot_len);
860 ret = do_iter_readv_writev(file, iter, pos, WRITE, flags);
862 ret = do_loop_readv_writev(file, iter, pos, WRITE, flags);
906 unsigned long vlen, loff_t *pos, rwf_t flags)
915 ret = do_iter_read(file, &iter, pos, flags);
923 unsigned long vlen, loff_t *pos, rwf_t flags)
933 ret = do_iter_write(file, &iter, pos, flags);
947 loff_t pos, *ppos = file_ppos(f.file);
949 pos = *ppos;
950 ppos = &pos;
954 f.file->f_pos = pos;
971 loff_t pos, *ppos = file_ppos(f.file);
973 pos = *ppos;
974 ppos = &pos;
978 f.file->f_pos = pos;
995 unsigned long vlen, loff_t pos, rwf_t flags)
1000 if (pos < 0)
1007 ret = vfs_readv(f.file, vec, vlen, &pos, flags);
1018 unsigned long vlen, loff_t pos, rwf_t flags)
1023 if (pos < 0)
1030 ret = vfs_writev(f.file, vec, vlen, &pos, flags);
1055 loff_t pos = pos_from_hilo(pos_h, pos_l);
1057 return do_preadv(fd, vec, vlen, pos, 0);
1064 loff_t pos = pos_from_hilo(pos_h, pos_l);
1066 if (pos == -1)
1069 return do_preadv(fd, vec, vlen, pos, flags);
1075 loff_t pos = pos_from_hilo(pos_h, pos_l);
1077 return do_pwritev(fd, vec, vlen, pos, 0);
1084 loff_t pos = pos_from_hilo(pos_h, pos_l);
1086 if (pos == -1)
1089 return do_pwritev(fd, vec, vlen, pos, flags);
1101 unsigned long, vlen, loff_t, pos)
1103 return do_preadv(fd, vec, vlen, pos, 0);
1111 loff_t pos = ((loff_t)pos_high << 32) | pos_low;
1113 return do_preadv(fd, vec, vlen, pos, 0);
1119 unsigned long, vlen, loff_t, pos, rwf_t, flags)
1121 if (pos == -1)
1123 return do_preadv(fd, vec, vlen, pos, flags);
1132 loff_t pos = ((loff_t)pos_high << 32) | pos_low;
1134 if (pos == -1)
1136 return do_preadv(fd, vec, vlen, pos, flags);
1142 unsigned long, vlen, loff_t, pos)
1144 return do_pwritev(fd, vec, vlen, pos, 0);
1152 loff_t pos = ((loff_t)pos_high << 32) | pos_low;
1154 return do_pwritev(fd, vec, vlen, pos, 0);
1160 unsigned long, vlen, loff_t, pos, rwf_t, flags)
1162 if (pos == -1)
1164 return do_pwritev(fd, vec, vlen, pos, flags);
1172 loff_t pos = ((loff_t)pos_high << 32) | pos_low;
1174 if (pos == -1)
1176 return do_pwritev(fd, vec, vlen, pos, flags);
1186 loff_t pos;
1202 pos = in.file->f_pos;
1204 pos = *ppos;
1208 retval = rw_verify_area(READ, in.file, &pos, count);
1230 if (unlikely(pos + count > max)) {
1232 if (pos >= max)
1234 count = max - pos;
1254 retval = do_splice_direct(in.file, &pos, out.file, &out_pos,
1261 retval = splice_file_to_pipe(in.file, opipe, &pos, count, fl);
1271 *ppos = pos;
1273 in.file->f_pos = pos;
1278 if (pos > max)
1291 loff_t pos;
1298 pos = off;
1299 ret = do_sendfile(out_fd, in_fd, &pos, count, MAX_NON_LFS);
1300 if (unlikely(put_user(pos, offset)))
1310 loff_t pos;
1314 if (unlikely(copy_from_user(&pos, offset, sizeof(loff_t))))
1316 ret = do_sendfile(out_fd, in_fd, &pos, count, 0);
1317 if (unlikely(put_user(pos, offset)))
1329 loff_t pos;
1336 pos = off;
1337 ret = do_sendfile(out_fd, in_fd, &pos, count, MAX_NON_LFS);
1338 if (unlikely(put_user(pos, offset)))
1349 loff_t pos;
1353 if (unlikely(copy_from_user(&pos, offset, sizeof(loff_t))))
1355 ret = do_sendfile(out_fd, in_fd, &pos, count, 0);
1356 if (unlikely(put_user(pos, offset)))
1626 * LFS limits. If pos is under the limit it becomes a short access. If it
1629 int generic_write_check_limits(struct file *file, loff_t pos, loff_t *count)
1636 if (pos >= limit) {
1640 *count = min(*count, limit - pos);
1646 if (unlikely(pos >= max_size))
1649 *count = min(*count, max_size - pos);