Lines Matching refs:cinode
421 cifs_has_mand_locks(struct cifsInodeInfo *cinode) in cifs_has_mand_locks() argument
426 down_read(&cinode->lock_sem); in cifs_has_mand_locks()
427 list_for_each_entry(cur, &cinode->llist, llist) { in cifs_has_mand_locks()
433 up_read(&cinode->lock_sem); in cifs_has_mand_locks()
452 struct cifsInodeInfo *cinode = CIFS_I(inode); in cifs_new_fileinfo() local
501 if (server->ops->is_read_op(oplock) && cifs_has_mand_locks(cinode)) { in cifs_new_fileinfo()
506 cifs_down_write(&cinode->lock_sem); in cifs_new_fileinfo()
507 list_add(&fdlocks->llist, &cinode->llist); in cifs_new_fileinfo()
508 up_write(&cinode->lock_sem); in cifs_new_fileinfo()
522 spin_lock(&cinode->open_file_lock); in cifs_new_fileinfo()
524 list_add(&cfile->flist, &cinode->openFileList); in cifs_new_fileinfo()
526 list_add_tail(&cfile->flist, &cinode->openFileList); in cifs_new_fileinfo()
527 spin_unlock(&cinode->open_file_lock); in cifs_new_fileinfo()
859 struct cifsInodeInfo *cinode = CIFS_I(d_inode(cfile->dentry)); in cifs_relock_file() local
866 down_read_nested(&cinode->lock_sem, SINGLE_DEPTH_NESTING); in cifs_relock_file()
867 if (cinode->can_cache_brlcks) { in cifs_relock_file()
869 up_read(&cinode->lock_sem); in cifs_relock_file()
882 up_read(&cinode->lock_sem); in cifs_relock_file()
895 struct cifsInodeInfo *cinode; in cifs_reopen_file() local
1016 cinode = CIFS_I(inode); in cifs_reopen_file()
1043 if (server->ops->is_read_op(oplock) && cifs_has_mand_locks(cinode)) { in cifs_reopen_file()
1073 struct cifsInodeInfo *cinode = CIFS_I(inode); in cifs_close() local
1083 if ((cinode->oplock == CIFS_CACHE_RHW_FLG) && in cifs_close()
1084 cinode->lease_granted && in cifs_close()
1085 !test_bit(CIFS_INO_CLOSE_ON_LOCK, &cinode->flags) && in cifs_close()
1087 if (test_and_clear_bit(CIFS_INO_MODIFIED_ATTR, &cinode->flags)) { in cifs_close()
1090 spin_lock(&cinode->deferred_lock); in cifs_close()
1106 spin_unlock(&cinode->deferred_lock); in cifs_close()
1109 spin_unlock(&cinode->deferred_lock); in cifs_close()
1279 struct cifsInodeInfo *cinode = CIFS_I(d_inode(cfile->dentry)); in cifs_find_lock_conflict() local
1281 list_for_each_entry(cur, &cinode->llist, llist) { in cifs_find_lock_conflict()
1305 struct cifsInodeInfo *cinode = CIFS_I(d_inode(cfile->dentry)); in cifs_lock_test() local
1309 down_read(&cinode->lock_sem); in cifs_lock_test()
1322 } else if (!cinode->can_cache_brlcks) in cifs_lock_test()
1327 up_read(&cinode->lock_sem); in cifs_lock_test()
1334 struct cifsInodeInfo *cinode = CIFS_I(d_inode(cfile->dentry)); in cifs_lock_add() local
1335 cifs_down_write(&cinode->lock_sem); in cifs_lock_add()
1337 up_write(&cinode->lock_sem); in cifs_lock_add()
1351 struct cifsInodeInfo *cinode = CIFS_I(d_inode(cfile->dentry)); in cifs_lock_add_if() local
1357 cifs_down_write(&cinode->lock_sem); in cifs_lock_add_if()
1362 if (!exist && cinode->can_cache_brlcks) { in cifs_lock_add_if()
1364 up_write(&cinode->lock_sem); in cifs_lock_add_if()
1374 up_write(&cinode->lock_sem); in cifs_lock_add_if()
1380 cifs_down_write(&cinode->lock_sem); in cifs_lock_add_if()
1384 up_write(&cinode->lock_sem); in cifs_lock_add_if()
1400 struct cifsInodeInfo *cinode = CIFS_I(file_inode(file)); in cifs_posix_lock_test() local
1406 down_read(&cinode->lock_sem); in cifs_posix_lock_test()
1409 if (flock->fl_type == F_UNLCK && !cinode->can_cache_brlcks) { in cifs_posix_lock_test()
1414 up_read(&cinode->lock_sem); in cifs_posix_lock_test()
1428 struct cifsInodeInfo *cinode = CIFS_I(file_inode(file)); in cifs_posix_lock_set() local
1434 cifs_down_write(&cinode->lock_sem); in cifs_posix_lock_set()
1435 if (!cinode->can_cache_brlcks) { in cifs_posix_lock_set()
1436 up_write(&cinode->lock_sem); in cifs_posix_lock_set()
1441 up_write(&cinode->lock_sem); in cifs_posix_lock_set()
1631 struct cifsInodeInfo *cinode = CIFS_I(d_inode(cfile->dentry)); in cifs_push_locks() local
1639 cifs_down_write(&cinode->lock_sem); in cifs_push_locks()
1640 if (!cinode->can_cache_brlcks) { in cifs_push_locks()
1641 up_write(&cinode->lock_sem); in cifs_push_locks()
1654 cinode->can_cache_brlcks = false; in cifs_push_locks()
1655 up_write(&cinode->lock_sem); in cifs_push_locks()
1810 struct cifsInodeInfo *cinode = CIFS_I(d_inode(cfile->dentry)); in cifs_unlock_range() local
1835 cifs_down_write(&cinode->lock_sem); in cifs_unlock_range()
1848 if (cinode->can_cache_brlcks) { in cifs_unlock_range()
1905 up_write(&cinode->lock_sem); in cifs_unlock_range()
2358 struct cifsInodeInfo *cinode; in cifs_get_writable_path() local
2368 cinode = CIFS_I(d_inode(cfile->dentry)); in cifs_get_writable_path()
2371 return cifs_get_writable_file(cinode, flags, ret_file); in cifs_get_writable_path()
2390 struct cifsInodeInfo *cinode; in cifs_get_readable_path() local
2400 cinode = CIFS_I(d_inode(cfile->dentry)); in cifs_get_readable_path()
2403 *ret_file = find_readable_file(cinode, 0); in cifs_get_readable_path()
3706 struct cifsInodeInfo *cinode = CIFS_I(inode); in cifs_writev() local
3715 down_read(&cinode->lock_sem); in cifs_writev()
3728 up_read(&cinode->lock_sem); in cifs_writev()
3740 struct cifsInodeInfo *cinode = CIFS_I(inode); in cifs_strict_writev() local
3747 written = cifs_get_writer(cinode); in cifs_strict_writev()
3751 if (CIFS_CACHE_WRITE(cinode)) { in cifs_strict_writev()
3768 if (CIFS_CACHE_READ(cinode)) { in cifs_strict_writev()
3779 cinode->oplock = 0; in cifs_strict_writev()
3782 cifs_put_writer(cinode); in cifs_strict_writev()
4239 struct cifsInodeInfo *cinode = CIFS_I(inode); in cifs_strict_readv() local
4254 if (!CIFS_CACHE_READ(cinode)) in cifs_strict_readv()
4266 down_read(&cinode->lock_sem); in cifs_strict_readv()
4271 up_read(&cinode->lock_sem); in cifs_strict_readv()
4884 struct cifsInodeInfo *cinode = CIFS_I(inode); in cifs_oplock_break() local
4890 wait_on_bit(&cinode->flags, CIFS_INODE_PENDING_WRITERS, in cifs_oplock_break()
4893 server->ops->downgrade_oplock(server, cinode, cfile->oplock_level, in cifs_oplock_break()
4896 if (!CIFS_CACHE_WRITE(cinode) && CIFS_CACHE_READ(cinode) && in cifs_oplock_break()
4897 cifs_has_mand_locks(cinode)) { in cifs_oplock_break()
4900 cinode->oplock = 0; in cifs_oplock_break()
4904 if (CIFS_CACHE_READ(cinode)) in cifs_oplock_break()
4909 if (!CIFS_CACHE_READ(cinode) || purge_cache) { in cifs_oplock_break()
4915 if (CIFS_CACHE_WRITE(cinode)) in cifs_oplock_break()
4932 cinode); in cifs_oplock_break()
4937 cifs_done_oplock_break(cinode); in cifs_oplock_break()