Lines Matching refs:flock
542 struct flock *l) in flock_to_posix_lock()
2135 SYSCALL_DEFINE2(flock, unsigned int, fd, unsigned int, cmd) in SYSCALL_DEFINE2() argument
2174 if (fd_file(f)->f_op->flock) in SYSCALL_DEFINE2()
2175 error = fd_file(f)->f_op->flock(fd_file(f), in SYSCALL_DEFINE2()
2237 static int posix_lock_to_flock(struct flock *flock, struct file_lock *fl) in posix_lock_to_flock() argument
2239 flock->l_pid = locks_translate_pid(&fl->c, task_active_pid_ns(current)); in posix_lock_to_flock()
2250 flock->l_start = fl->fl_start; in posix_lock_to_flock()
2251 flock->l_len = fl->fl_end == OFFSET_MAX ? 0 : in posix_lock_to_flock()
2253 flock->l_whence = 0; in posix_lock_to_flock()
2254 flock->l_type = fl->c.flc_type; in posix_lock_to_flock()
2259 static void posix_lock_to_flock64(struct flock64 *flock, struct file_lock *fl) in posix_lock_to_flock64() argument
2261 flock->l_pid = locks_translate_pid(&fl->c, task_active_pid_ns(current)); in posix_lock_to_flock64()
2262 flock->l_start = fl->fl_start; in posix_lock_to_flock64()
2263 flock->l_len = fl->fl_end == OFFSET_MAX ? 0 : in posix_lock_to_flock64()
2265 flock->l_whence = 0; in posix_lock_to_flock64()
2266 flock->l_type = fl->c.flc_type; in posix_lock_to_flock64()
2273 int fcntl_getlk(struct file *filp, unsigned int cmd, struct flock *flock) in fcntl_getlk() argument
2282 if (cmd != F_OFD_GETLK && flock->l_type != F_RDLCK in fcntl_getlk()
2283 && flock->l_type != F_WRLCK) in fcntl_getlk()
2286 error = flock_to_posix_lock(filp, fl, flock); in fcntl_getlk()
2292 if (flock->l_pid != 0) in fcntl_getlk()
2303 flock->l_type = fl->c.flc_type; in fcntl_getlk()
2305 error = posix_lock_to_flock(flock, fl); in fcntl_getlk()
2402 struct flock *flock) in fcntl_setlk() argument
2412 error = flock_to_posix_lock(filp, file_lock, flock); in fcntl_setlk()
2427 if (flock->l_pid != 0) in fcntl_setlk()
2436 if (flock->l_pid != 0) in fcntl_setlk()
2481 int fcntl_getlk64(struct file *filp, unsigned int cmd, struct flock64 *flock) in fcntl_getlk64() argument
2491 if (cmd != F_OFD_GETLK && flock->l_type != F_RDLCK in fcntl_getlk64()
2492 && flock->l_type != F_WRLCK) in fcntl_getlk64()
2495 error = flock64_to_posix_lock(filp, fl, flock); in fcntl_getlk64()
2501 if (flock->l_pid != 0) in fcntl_getlk64()
2512 flock->l_type = fl->c.flc_type; in fcntl_getlk64()
2514 posix_lock_to_flock64(flock, fl); in fcntl_getlk64()
2525 struct flock64 *flock) in fcntl_setlk64() argument
2534 error = flock64_to_posix_lock(filp, file_lock, flock); in fcntl_setlk64()
2549 if (flock->l_pid != 0) in fcntl_setlk64()
2558 if (flock->l_pid != 0) in fcntl_setlk64()
2652 if (filp->f_op->flock) in locks_remove_flock()
2653 filp->f_op->flock(filp, F_SETLKW, &fl); in locks_remove_flock()