Lines Matching refs:fp
132 struct oplock_info *opinfo_get(struct ksmbd_file *fp) in opinfo_get() argument
137 opinfo = rcu_dereference(fp->f_opinfo); in opinfo_get()
202 static unsigned long opinfo_count(struct ksmbd_file *fp) in opinfo_count() argument
204 if (ksmbd_stream_fd(fp)) in opinfo_count()
205 return atomic_read(&fp->f_ci->sop_count); in opinfo_count()
207 return atomic_read(&fp->f_ci->op_count); in opinfo_count()
210 static void opinfo_count_inc(struct ksmbd_file *fp) in opinfo_count_inc() argument
212 if (ksmbd_stream_fd(fp)) in opinfo_count_inc()
213 return atomic_inc(&fp->f_ci->sop_count); in opinfo_count_inc()
215 return atomic_inc(&fp->f_ci->op_count); in opinfo_count_inc()
218 static void opinfo_count_dec(struct ksmbd_file *fp) in opinfo_count_dec() argument
220 if (ksmbd_stream_fd(fp)) in opinfo_count_dec()
221 return atomic_dec(&fp->f_ci->sop_count); in opinfo_count_dec()
223 return atomic_dec(&fp->f_ci->op_count); in opinfo_count_dec()
369 void close_id_del_oplock(struct ksmbd_file *fp) in close_id_del_oplock() argument
373 if (fp->reserve_lease_break) in close_id_del_oplock()
374 smb_lazy_parent_lease_break_close(fp); in close_id_del_oplock()
376 opinfo = opinfo_get(fp); in close_id_del_oplock()
382 rcu_assign_pointer(fp->f_opinfo, NULL); in close_id_del_oplock()
392 opinfo_count_dec(fp); in close_id_del_oplock()
628 struct ksmbd_file *fp; in __smb2_oplock_break_noti() local
630 fp = ksmbd_lookup_global_fd(br_info->fid); in __smb2_oplock_break_noti()
631 if (!fp) in __smb2_oplock_break_noti()
636 ksmbd_fd_put(work, fp); in __smb2_oplock_break_noti()
665 rsp->PersistentFid = fp->persistent_id; in __smb2_oplock_break_noti()
666 rsp->VolatileFid = fp->volatile_id; in __smb2_oplock_break_noti()
668 ksmbd_fd_put(work, fp); in __smb2_oplock_break_noti()
1080 void smb_send_parent_lease_break_noti(struct ksmbd_file *fp, in smb_send_parent_lease_break_noti() argument
1089 p_ci = ksmbd_inode_lookup_lock(fp->filp->f_path.dentry->d_parent); in smb_send_parent_lease_break_noti()
1100 !compare_guid_key(opinfo, fp->conn->ClientGUID, in smb_send_parent_lease_break_noti()
1119 void smb_lazy_parent_lease_break_close(struct ksmbd_file *fp) in smb_lazy_parent_lease_break_close() argument
1125 opinfo = rcu_dereference(fp->f_opinfo); in smb_lazy_parent_lease_break_close()
1131 p_ci = ksmbd_inode_lookup_lock(fp->filp->f_path.dentry->d_parent); in smb_lazy_parent_lease_break_close()
1171 struct ksmbd_file *fp, __u16 tid, in smb_grant_oplock() argument
1177 struct ksmbd_inode *ci = fp->f_ci; in smb_grant_oplock()
1182 if (S_ISDIR(file_inode(fp->filp)->i_mode)) { in smb_grant_oplock()
1201 if (!opinfo_count(fp)) in smb_grant_oplock()
1205 if (fp->attrib_only && fp->cdoption != FILE_OVERWRITE_IF_LE && in smb_grant_oplock()
1206 fp->cdoption != FILE_OVERWRITE_LE && in smb_grant_oplock()
1207 fp->cdoption != FILE_SUPERSEDE_LE) { in smb_grant_oplock()
1280 rcu_assign_pointer(fp->f_opinfo, opinfo); in smb_grant_oplock()
1281 opinfo->o_fp = fp; in smb_grant_oplock()
1283 opinfo_count_inc(fp); in smb_grant_oplock()
1304 struct ksmbd_file *fp, int is_trunc) in smb_break_all_write_oplock() argument
1308 brk_opinfo = opinfo_get_list(fp->f_ci); in smb_break_all_write_oplock()
1329 void smb_break_all_levII_oplock(struct ksmbd_work *work, struct ksmbd_file *fp, in smb_break_all_levII_oplock() argument
1340 ci = fp->f_ci; in smb_break_all_levII_oplock()
1341 op = opinfo_get(fp); in smb_break_all_levII_oplock()
1397 void smb_break_all_oplock(struct ksmbd_work *work, struct ksmbd_file *fp) in smb_break_all_oplock() argument
1403 smb_break_all_write_oplock(work, fp, 1); in smb_break_all_oplock()
1404 smb_break_all_levII_oplock(work, fp, 1); in smb_break_all_oplock()
1618 void create_durable_v2_rsp_buf(char *cc, struct ksmbd_file *fp) in create_durable_v2_rsp_buf() argument
1636 buf->Timeout = cpu_to_le32(fp->durable_timeout); in create_durable_v2_rsp_buf()
1637 if (fp->is_persistent) in create_durable_v2_rsp_buf()
1695 void create_posix_rsp_buf(char *cc, struct ksmbd_file *fp) in create_posix_rsp_buf() argument
1698 struct inode *inode = file_inode(fp->filp); in create_posix_rsp_buf()
1699 struct mnt_idmap *idmap = file_mnt_idmap(fp->filp); in create_posix_rsp_buf()
1734 buf->reparse_tag = cpu_to_le32(fp->volatile_id); in create_posix_rsp_buf()
1809 struct ksmbd_file *fp, in smb2_check_durable_oplock() argument
1813 struct oplock_info *opinfo = opinfo_get(fp); in smb2_check_durable_oplock()
1834 if (memcmp(conn->ClientGUID, fp->client_guid, in smb2_check_durable_oplock()
1868 if (!ksmbd_inode_pending_delete(fp)) in smb2_check_durable_oplock()
1869 ret = ksmbd_validate_name_reconnect(share, fp, name); in smb2_check_durable_oplock()