/openbmc/linux/fs/smb/client/ |
H A D | misc.c | 559 void cifs_set_oplock_level(struct cifsInodeInfo *cinode, __u32 oplock) in cifs_set_oplock_level() argument 564 cinode->oplock = CIFS_CACHE_WRITE_FLG | CIFS_CACHE_READ_FLG; in cifs_set_oplock_level() 566 &cinode->netfs.inode); in cifs_set_oplock_level() 568 cinode->oplock = CIFS_CACHE_READ_FLG; in cifs_set_oplock_level() 570 &cinode->netfs.inode); in cifs_set_oplock_level() 572 cinode->oplock = 0; in cifs_set_oplock_level() 579 int cifs_get_writer(struct cifsInodeInfo *cinode) in cifs_get_writer() argument 584 rc = wait_on_bit(&cinode->flags, CIFS_INODE_PENDING_OPLOCK_BREAK, in cifs_get_writer() 589 spin_lock(&cinode->writers_lock); in cifs_get_writer() 590 if (!cinode->writers) in cifs_get_writer() [all …]
|
H A D | file.c | 438 cifs_has_mand_locks(struct cifsInodeInfo *cinode) in cifs_has_mand_locks() argument 443 down_read(&cinode->lock_sem); in cifs_has_mand_locks() 444 list_for_each_entry(cur, &cinode->llist, llist) { in cifs_has_mand_locks() 450 up_read(&cinode->lock_sem); in cifs_has_mand_locks() 470 struct cifsInodeInfo *cinode = CIFS_I(inode); in cifs_new_fileinfo() local 520 if (server->ops->is_read_op(oplock) && cifs_has_mand_locks(cinode)) { in cifs_new_fileinfo() 525 cifs_down_write(&cinode->lock_sem); in cifs_new_fileinfo() 526 list_add(&fdlocks->llist, &cinode->llist); in cifs_new_fileinfo() 527 up_write(&cinode->lock_sem); in cifs_new_fileinfo() 541 spin_lock(&cinode->open_file_lock); in cifs_new_fileinfo() [all …]
|
H A D | reparse.h | 82 struct cifsInodeInfo *cinode = CIFS_I(inode); in reparse_inode_match() local 91 if (cinode->reparse_tag != IO_REPARSE_TAG_INTERNAL && in reparse_inode_match() 92 cinode->reparse_tag != fattr->cf_cifstag) in reparse_inode_match() 94 return (cinode->cifsAttrs & ATTR_REPARSE) && in reparse_inode_match()
|
H A D | smb2misc.c | 486 smb2_get_lease_state(struct cifsInodeInfo *cinode) in smb2_get_lease_state() argument 490 if (CIFS_CACHE_WRITE(cinode)) in smb2_get_lease_state() 492 if (CIFS_CACHE_HANDLE(cinode)) in smb2_get_lease_state() 494 if (CIFS_CACHE_READ(cinode)) in smb2_get_lease_state() 545 struct cifsInodeInfo *cinode; in smb2_tcon_has_lease() local 552 cinode = CIFS_I(d_inode(cfile->dentry)); in smb2_tcon_has_lease() 554 if (memcmp(cinode->lease_key, rsp->LeaseKey, in smb2_tcon_has_lease() 567 set_bit(CIFS_INODE_PENDING_OPLOCK_BREAK, &cinode->flags); in smb2_tcon_has_lease() 678 struct cifsInodeInfo *cinode; in smb2_is_valid_oplock_break() local 717 cinode = CIFS_I(d_inode(cfile->dentry)); in smb2_is_valid_oplock_break() [all …]
|
H A D | smb2file.c | 195 struct cifsInodeInfo *cinode = CIFS_I(d_inode(cfile->dentry)); in smb2_unlock_range() local 219 cifs_down_write(&cinode->lock_sem); in smb2_unlock_range() 232 if (cinode->can_cache_brlcks) { in smb2_unlock_range() 285 up_write(&cinode->lock_sem); in smb2_unlock_range() 338 struct cifsInodeInfo *cinode = CIFS_I(d_inode(cfile->dentry)); in smb2_push_mandatory_locks() local 362 list_for_each_entry(fdlocks, &cinode->llist, llist) { in smb2_push_mandatory_locks()
|
H A D | smb1ops.c | 379 struct cifsInodeInfo *cinode, __u32 oplock, in cifs_downgrade_oplock() argument 382 cifs_set_oplock_level(cinode, oplock); in cifs_downgrade_oplock() 750 struct cifsInodeInfo *cinode = CIFS_I(d_inode(cfile->dentry)); in cifs_set_fid() local 752 cifs_set_oplock_level(cinode, oplock); in cifs_set_fid() 753 cinode->can_cache_brlcks = CIFS_CACHE_WRITE(cinode); in cifs_set_fid() 799 struct cifsInodeInfo *cinode = CIFS_I(inode); in smb_set_file_info() local 805 open_file = find_writable_file(cinode, FIND_WR_FSUID_ONLY); in smb_set_file_info() 824 cinode->cifsAttrs = le32_to_cpu(buf->Attributes); in smb_set_file_info() 853 cinode->cifsAttrs = le32_to_cpu(buf->Attributes); in smb_set_file_info() 904 __u64 volatile_fid, __u16 net_fid, struct cifsInodeInfo *cinode) in cifs_oplock_response() argument [all …]
|
H A D | smb2ops.c | 1402 struct cifsInodeInfo *cinode = CIFS_I(d_inode(cfile->dentry)); in smb2_set_fid() local 1411 server->ops->set_oplock_level(cinode, oplock, fid->epoch, in smb2_set_fid() 1413 cinode->can_cache_brlcks = CIFS_CACHE_WRITE(cinode); in smb2_set_fid() 2507 __u64 volatile_fid, __u16 net_fid, struct cifsInodeInfo *cinode) in smb2_oplock_response() argument 2510 return SMB2_lease_break(0, tcon, cinode->lease_key, in smb2_oplock_response() 2511 smb2_get_lease_state(cinode)); in smb2_oplock_response() 2514 CIFS_CACHE_READ(cinode) ? 1 : 0); in smb2_oplock_response() 3869 struct cifsInodeInfo *cinode, __u32 oplock, in smb2_downgrade_oplock() argument 3872 server->ops->set_oplock_level(cinode, oplock, 0, NULL); in smb2_downgrade_oplock() 3876 smb21_set_oplock_level(struct cifsInodeInfo *cinode, __u32 oplock, [all …]
|
H A D | cifsglob.h | 325 struct cifsInodeInfo *cinode, __u32 oplock, 522 void (*set_oplock_level)(struct cifsInodeInfo *cinode, __u32 oplock, __u16 epoch, 1564 #define CIFS_CACHE_READ(cinode) ((cinode->oplock & CIFS_CACHE_READ_FLG) || (CIFS_SB(cinode->netfs.i… argument 1565 #define CIFS_CACHE_HANDLE(cinode) (cinode->oplock & CIFS_CACHE_HANDLE_FLG) argument 1566 #define CIFS_CACHE_WRITE(cinode) ((cinode->oplock & CIFS_CACHE_WRITE_FLG) || (CIFS_SB(cinode->netfs… argument
|
H A D | cifsfs.c | 431 struct cifsInodeInfo *cinode = CIFS_I(inode); in cifs_free_inode() local 434 kfree(cinode->symlink_target); in cifs_free_inode() 435 kmem_cache_free(cifs_inode_cachep, cinode); in cifs_free_inode() 1021 struct cifsInodeInfo *cinode = CIFS_I(inode); in cifs_file_write_iter() local 1027 if (written > 0 && CIFS_CACHE_READ(cinode)) { in cifs_file_write_iter() 1032 cinode->oplock = 0; in cifs_file_write_iter() 1037 written = cifs_get_writer(cinode); in cifs_file_write_iter() 1052 cifs_put_writer(cinode); in cifs_file_write_iter()
|
H A D | cifsproto.h | 183 extern void cifs_set_oplock_level(struct cifsInodeInfo *cinode, __u32 oplock); 184 extern int cifs_get_writer(struct cifsInodeInfo *cinode); 185 extern void cifs_put_writer(struct cifsInodeInfo *cinode); 186 extern void cifs_done_oplock_break(struct cifsInodeInfo *cinode);
|
H A D | smb2proto.h | 49 extern __le32 smb2_get_lease_state(struct cifsInodeInfo *cinode);
|