Lines Matching refs:brk_opinfo
868 static int oplock_break(struct oplock_info *brk_opinfo, int req_op_level) in oplock_break() argument
875 brk_opinfo->level); in oplock_break()
877 if (brk_opinfo->is_lease) { in oplock_break()
878 struct lease *lease = brk_opinfo->o_lease; in oplock_break()
880 atomic_inc(&brk_opinfo->breaking_cnt); in oplock_break()
882 err = oplock_break_pending(brk_opinfo, req_op_level); in oplock_break()
886 if (brk_opinfo->open_trunc) { in oplock_break()
912 brk_opinfo->op_state = OPLOCK_ACK_WAIT; in oplock_break()
914 atomic_dec(&brk_opinfo->breaking_cnt); in oplock_break()
916 err = oplock_break_pending(brk_opinfo, req_op_level); in oplock_break()
920 if (brk_opinfo->level == SMB2_OPLOCK_LEVEL_BATCH || in oplock_break()
921 brk_opinfo->level == SMB2_OPLOCK_LEVEL_EXCLUSIVE) in oplock_break()
922 brk_opinfo->op_state = OPLOCK_ACK_WAIT; in oplock_break()
925 if (brk_opinfo->is_lease) in oplock_break()
926 err = smb2_lease_break_noti(brk_opinfo); in oplock_break()
928 err = smb2_oplock_break_noti(brk_opinfo); in oplock_break()
930 ksmbd_debug(OPLOCK, "oplock granted = %d\n", brk_opinfo->level); in oplock_break()
931 if (brk_opinfo->op_state == OPLOCK_CLOSING) in oplock_break()
933 wake_up_oplock_break(brk_opinfo); in oplock_break()
935 wait_lease_breaking(brk_opinfo); in oplock_break()
1228 struct oplock_info *brk_opinfo; in smb_break_all_write_oplock() local
1230 brk_opinfo = opinfo_get_list(fp->f_ci); in smb_break_all_write_oplock()
1231 if (!brk_opinfo) in smb_break_all_write_oplock()
1233 if (brk_opinfo->level != SMB2_OPLOCK_LEVEL_BATCH && in smb_break_all_write_oplock()
1234 brk_opinfo->level != SMB2_OPLOCK_LEVEL_EXCLUSIVE) { in smb_break_all_write_oplock()
1235 opinfo_conn_put(brk_opinfo); in smb_break_all_write_oplock()
1239 brk_opinfo->open_trunc = is_trunc; in smb_break_all_write_oplock()
1240 list_add(&work->interim_entry, &brk_opinfo->interim_list); in smb_break_all_write_oplock()
1241 oplock_break(brk_opinfo, SMB2_OPLOCK_LEVEL_II); in smb_break_all_write_oplock()
1242 opinfo_conn_put(brk_opinfo); in smb_break_all_write_oplock()