tag | line | file | source code |
file_lock | 46 | fs/locks.c | static int copy_flock(struct file *filp, struct file_lock *fl, struct flock *l); |
file_lock | 47 | fs/locks.c | static int conflict(struct file_lock *caller_fl, struct file_lock *sys_fl); |
file_lock | 48 | fs/locks.c | static int overlap(struct file_lock *fl1, struct file_lock *fl2); |
file_lock | 49 | fs/locks.c | static int lock_it(struct file *filp, struct file_lock *caller); |
file_lock | 50 | fs/locks.c | static struct file_lock *alloc_lock(struct file_lock **pos, struct file_lock *fl); |
file_lock | 51 | fs/locks.c | static void free_lock(struct file_lock **fl); |
file_lock | 56 | fs/locks.c | static struct file_lock *file_lock_table = NULL; |
file_lock | 63 | fs/locks.c | struct file_lock *fl,file_lock; |
file_lock | 73 | fs/locks.c | if (!copy_flock(filp, &file_lock, &flock)) |
file_lock | 77 | fs/locks.c | if (conflict(&file_lock, fl)) { |
file_lock | 102 | fs/locks.c | struct file_lock *fl,file_lock; |
file_lock | 115 | fs/locks.c | if (!copy_flock(filp, &file_lock, &flock)) |
file_lock | 117 | fs/locks.c | switch (file_lock.fl_type) { |
file_lock | 129 | fs/locks.c | file_lock.fl_type = F_RDLCK; |
file_lock | 134 | fs/locks.c | file_lock.fl_type = F_WRLCK; |
file_lock | 144 | fs/locks.c | if (file_lock.fl_type != F_UNLCK) { |
file_lock | 147 | fs/locks.c | if (!conflict(&file_lock, fl)) |
file_lock | 157 | fs/locks.c | if (locks_deadlocked(file_lock.fl_owner->pid,fl->fl_owner->pid)) |
file_lock | 173 | fs/locks.c | return lock_it(filp, &file_lock); |
file_lock | 187 | fs/locks.c | struct file_lock *fl; |
file_lock | 214 | fs/locks.c | struct file_lock *fl; |
file_lock | 215 | fs/locks.c | struct file_lock **before; |
file_lock | 234 | fs/locks.c | static int copy_flock(struct file *filp, struct file_lock *fl, struct flock *l) |
file_lock | 265 | fs/locks.c | static int conflict(struct file_lock *caller_fl, struct file_lock *sys_fl) |
file_lock | 280 | fs/locks.c | static int overlap(struct file_lock *fl1, struct file_lock *fl2) |
file_lock | 305 | fs/locks.c | static int lock_it(struct file *filp, struct file_lock *caller) |
file_lock | 307 | fs/locks.c | struct file_lock *fl; |
file_lock | 308 | fs/locks.c | struct file_lock *left = 0; |
file_lock | 309 | fs/locks.c | struct file_lock *right = 0; |
file_lock | 310 | fs/locks.c | struct file_lock **before; |
file_lock | 451 | fs/locks.c | static struct file_lock *alloc_lock(struct file_lock **pos, |
file_lock | 452 | fs/locks.c | struct file_lock *fl) |
file_lock | 454 | fs/locks.c | struct file_lock *tmp; |
file_lock | 457 | fs/locks.c | tmp = (struct file_lock *)kmalloc(sizeof(struct file_lock), GFP_KERNEL); |
file_lock | 484 | fs/locks.c | static void free_lock(struct file_lock **fl_p) |
file_lock | 486 | fs/locks.c | struct file_lock *fl; |
file_lock | 222 | include/linux/fs.h | struct file_lock * i_flock; |
file_lock | 269 | include/linux/fs.h | struct file_lock *fl_next; /* singly linked list for this inode */ |
file_lock | 270 | include/linux/fs.h | struct file_lock *fl_nextlink; /* doubly linked list of all locks */ |
file_lock | 271 | include/linux/fs.h | struct file_lock *fl_prevlink; /* used to simplify lock removal */ |