• Home
  • Raw
  • Download

Lines Matching refs:range

2309 	struct fstrim_range range;  in f2fs_ioc_fitrim()  local
2318 if (copy_from_user(&range, (struct fstrim_range __user *)arg, in f2fs_ioc_fitrim()
2319 sizeof(range))) in f2fs_ioc_fitrim()
2326 range.minlen = max((unsigned int)range.minlen, in f2fs_ioc_fitrim()
2328 ret = f2fs_trim_fs(F2FS_SB(sb), &range); in f2fs_ioc_fitrim()
2333 if (copy_to_user((struct fstrim_range __user *)arg, &range, in f2fs_ioc_fitrim()
2334 sizeof(range))) in f2fs_ioc_fitrim()
2501 static int __f2fs_ioc_gc_range(struct file *filp, struct f2fs_gc_range *range) in __f2fs_ioc_gc_range() argument
2505 .init_gc_type = range->sync ? FG_GC : BG_GC, in __f2fs_ioc_gc_range()
2508 .err_gc_skipped = range->sync, in __f2fs_ioc_gc_range()
2518 end = range->start + range->len; in __f2fs_ioc_gc_range()
2519 if (end < range->start || range->start < MAIN_BLKADDR(sbi) || in __f2fs_ioc_gc_range()
2528 if (!range->sync) { in __f2fs_ioc_gc_range()
2537 gc_control.victim_segno = GET_SEGNO(sbi, range->start); in __f2fs_ioc_gc_range()
2544 range->start += CAP_BLKS_PER_SEC(sbi); in __f2fs_ioc_gc_range()
2545 if (range->start <= end) in __f2fs_ioc_gc_range()
2554 struct f2fs_gc_range range; in f2fs_ioc_gc_range() local
2556 if (copy_from_user(&range, (struct f2fs_gc_range __user *)arg, in f2fs_ioc_gc_range()
2557 sizeof(range))) in f2fs_ioc_gc_range()
2559 return __f2fs_ioc_gc_range(filp, &range); in f2fs_ioc_gc_range()
2591 struct f2fs_defragment *range) in f2fs_defragment_range() argument
2605 pg_start = range->start >> PAGE_SHIFT; in f2fs_defragment_range()
2606 pg_end = (range->start + range->len) >> PAGE_SHIFT; in f2fs_defragment_range()
2625 err = filemap_write_and_wait_range(inode->i_mapping, range->start, in f2fs_defragment_range()
2626 range->start + range->len - 1); in f2fs_defragment_range()
2744 range->len = (u64)total << PAGE_SHIFT; in f2fs_defragment_range()
2752 struct f2fs_defragment range; in f2fs_ioc_defragment() local
2764 if (copy_from_user(&range, (struct f2fs_defragment __user *)arg, in f2fs_ioc_defragment()
2765 sizeof(range))) in f2fs_ioc_defragment()
2769 if (range.start & (F2FS_BLKSIZE - 1) || range.len & (F2FS_BLKSIZE - 1)) in f2fs_ioc_defragment()
2772 if (unlikely((range.start + range.len) >> PAGE_SHIFT > in f2fs_ioc_defragment()
2780 err = f2fs_defragment_range(sbi, filp, &range); in f2fs_ioc_defragment()
2787 if (copy_to_user((struct f2fs_defragment __user *)arg, &range, in f2fs_ioc_defragment()
2788 sizeof(range))) in f2fs_ioc_defragment()
2915 struct f2fs_move_range *range) in __f2fs_ioc_move_range() argument
2924 dst = fdget(range->dst_fd); in __f2fs_ioc_move_range()
2937 err = f2fs_move_file_range(filp, range->pos_in, dst.file, in __f2fs_ioc_move_range()
2938 range->pos_out, range->len); in __f2fs_ioc_move_range()
2948 struct f2fs_move_range range; in f2fs_ioc_move_range() local
2950 if (copy_from_user(&range, (struct f2fs_move_range __user *)arg, in f2fs_ioc_move_range()
2951 sizeof(range))) in f2fs_ioc_move_range()
2953 return __f2fs_ioc_move_range(filp, &range); in f2fs_ioc_move_range()
2963 struct f2fs_flush_device range; in f2fs_ioc_flush_device() local
2980 if (copy_from_user(&range, (struct f2fs_flush_device __user *)arg, in f2fs_ioc_flush_device()
2981 sizeof(range))) in f2fs_ioc_flush_device()
2984 if (!f2fs_is_multi_device(sbi) || sbi->s_ndevs - 1 <= range.dev_num || in f2fs_ioc_flush_device()
2987 range.dev_num, sbi->s_ndevs, sbi->segs_per_sec); in f2fs_ioc_flush_device()
2995 if (range.dev_num != 0) in f2fs_ioc_flush_device()
2996 dev_start_segno = GET_SEGNO(sbi, FDEV(range.dev_num).start_blk); in f2fs_ioc_flush_device()
2997 dev_end_segno = GET_SEGNO(sbi, FDEV(range.dev_num).end_blk); in f2fs_ioc_flush_device()
3002 end_segno = min(start_segno + range.segments, dev_end_segno); in f2fs_ioc_flush_device()
3793 struct f2fs_sectrim_range range; in f2fs_sec_trim_file() local
3803 if (copy_from_user(&range, (struct f2fs_sectrim_range __user *)arg, in f2fs_sec_trim_file()
3804 sizeof(range))) in f2fs_sec_trim_file()
3807 if (range.flags == 0 || (range.flags & ~F2FS_TRIM_FILE_MASK) || in f2fs_sec_trim_file()
3811 if (((range.flags & F2FS_TRIM_FILE_DISCARD) && in f2fs_sec_trim_file()
3813 ((range.flags & F2FS_TRIM_FILE_ZEROOUT) && in f2fs_sec_trim_file()
3821 range.start >= inode->i_size) { in f2fs_sec_trim_file()
3826 if (range.len == 0) in f2fs_sec_trim_file()
3829 if (inode->i_size - range.start > range.len) { in f2fs_sec_trim_file()
3830 end_addr = range.start + range.len; in f2fs_sec_trim_file()
3832 end_addr = range.len == (u64)-1 ? in f2fs_sec_trim_file()
3837 if (!IS_ALIGNED(range.start, F2FS_BLKSIZE) || in f2fs_sec_trim_file()
3843 index = F2FS_BYTES_TO_BLK(range.start); in f2fs_sec_trim_file()
3853 ret = filemap_write_and_wait_range(mapping, range.start, in f2fs_sec_trim_file()
3858 truncate_inode_pages_range(mapping, range.start, in f2fs_sec_trim_file()
3909 len, range.flags); in f2fs_sec_trim_file()
3938 prev_block, len, range.flags); in f2fs_sec_trim_file()
4860 struct f2fs_gc_range range; in f2fs_compat_ioc_gc_range() local
4864 err = get_user(range.sync, &urange->sync); in f2fs_compat_ioc_gc_range()
4865 err |= get_user(range.start, &urange->start); in f2fs_compat_ioc_gc_range()
4866 err |= get_user(range.len, &urange->len); in f2fs_compat_ioc_gc_range()
4870 return __f2fs_ioc_gc_range(file, &range); in f2fs_compat_ioc_gc_range()
4885 struct f2fs_move_range range; in f2fs_compat_ioc_move_range() local
4889 err = get_user(range.dst_fd, &urange->dst_fd); in f2fs_compat_ioc_move_range()
4890 err |= get_user(range.pos_in, &urange->pos_in); in f2fs_compat_ioc_move_range()
4891 err |= get_user(range.pos_out, &urange->pos_out); in f2fs_compat_ioc_move_range()
4892 err |= get_user(range.len, &urange->len); in f2fs_compat_ioc_move_range()
4896 return __f2fs_ioc_move_range(file, &range); in f2fs_compat_ioc_move_range()