Lines Matching refs:flock
569 struct flock *l) in flock_to_posix_lock()
2222 SYSCALL_DEFINE2(flock, unsigned int, fd, unsigned int, cmd) in SYSCALL_DEFINE2() argument
2254 if (f.file->f_op->flock) in SYSCALL_DEFINE2()
2255 error = f.file->f_op->flock(f.file, in SYSCALL_DEFINE2()
2318 static int posix_lock_to_flock(struct flock *flock, struct file_lock *fl) in posix_lock_to_flock() argument
2320 flock->l_pid = locks_translate_pid(fl, task_active_pid_ns(current)); in posix_lock_to_flock()
2331 flock->l_start = fl->fl_start; in posix_lock_to_flock()
2332 flock->l_len = fl->fl_end == OFFSET_MAX ? 0 : in posix_lock_to_flock()
2334 flock->l_whence = 0; in posix_lock_to_flock()
2335 flock->l_type = fl->fl_type; in posix_lock_to_flock()
2340 static void posix_lock_to_flock64(struct flock64 *flock, struct file_lock *fl) in posix_lock_to_flock64() argument
2342 flock->l_pid = locks_translate_pid(fl, task_active_pid_ns(current)); in posix_lock_to_flock64()
2343 flock->l_start = fl->fl_start; in posix_lock_to_flock64()
2344 flock->l_len = fl->fl_end == OFFSET_MAX ? 0 : in posix_lock_to_flock64()
2346 flock->l_whence = 0; in posix_lock_to_flock64()
2347 flock->l_type = fl->fl_type; in posix_lock_to_flock64()
2354 int fcntl_getlk(struct file *filp, unsigned int cmd, struct flock *flock) in fcntl_getlk() argument
2363 if (flock->l_type != F_RDLCK && flock->l_type != F_WRLCK) in fcntl_getlk()
2366 error = flock_to_posix_lock(filp, fl, flock); in fcntl_getlk()
2372 if (flock->l_pid != 0) in fcntl_getlk()
2384 flock->l_type = fl->fl_type; in fcntl_getlk()
2386 error = posix_lock_to_flock(flock, fl); in fcntl_getlk()
2480 struct flock *flock) in fcntl_setlk() argument
2498 error = flock_to_posix_lock(filp, file_lock, flock); in fcntl_setlk()
2513 if (flock->l_pid != 0) in fcntl_setlk()
2522 if (flock->l_pid != 0) in fcntl_setlk()
2567 int fcntl_getlk64(struct file *filp, unsigned int cmd, struct flock64 *flock) in fcntl_getlk64() argument
2577 if (flock->l_type != F_RDLCK && flock->l_type != F_WRLCK) in fcntl_getlk64()
2580 error = flock64_to_posix_lock(filp, fl, flock); in fcntl_getlk64()
2586 if (flock->l_pid != 0) in fcntl_getlk64()
2598 flock->l_type = fl->fl_type; in fcntl_getlk64()
2600 posix_lock_to_flock64(flock, fl); in fcntl_getlk64()
2611 struct flock64 *flock) in fcntl_setlk64() argument
2629 error = flock64_to_posix_lock(filp, file_lock, flock); in fcntl_setlk64()
2644 if (flock->l_pid != 0) in fcntl_setlk64()
2653 if (flock->l_pid != 0) in fcntl_setlk64()
2747 if (filp->f_op->flock) in locks_remove_flock()
2748 filp->f_op->flock(filp, F_SETLKW, &fl); in locks_remove_flock()