Lines Matching defs:brk_opinfo
856 static int oplock_break(struct oplock_info *brk_opinfo, int req_op_level,
864 brk_opinfo->level);
866 if (brk_opinfo->is_lease) {
867 struct lease *lease = brk_opinfo->o_lease;
869 atomic_inc(&brk_opinfo->breaking_cnt);
870 err = oplock_break_pending(brk_opinfo, req_op_level);
874 if (brk_opinfo->open_trunc) {
907 brk_opinfo->op_state = OPLOCK_ACK_WAIT;
909 atomic_dec(&brk_opinfo->breaking_cnt);
911 err = oplock_break_pending(brk_opinfo, req_op_level);
915 if (brk_opinfo->level == SMB2_OPLOCK_LEVEL_BATCH ||
916 brk_opinfo->level == SMB2_OPLOCK_LEVEL_EXCLUSIVE)
917 brk_opinfo->op_state = OPLOCK_ACK_WAIT;
920 if (brk_opinfo->is_lease)
921 err = smb2_lease_break_noti(brk_opinfo);
923 err = smb2_oplock_break_noti(brk_opinfo);
925 ksmbd_debug(OPLOCK, "oplock granted = %d\n", brk_opinfo->level);
926 if (brk_opinfo->op_state == OPLOCK_CLOSING)
928 wake_up_oplock_break(brk_opinfo);
930 wait_lease_breaking(brk_opinfo);
1306 struct oplock_info *brk_opinfo;
1308 brk_opinfo = opinfo_get_list(fp->f_ci);
1309 if (!brk_opinfo)
1311 if (brk_opinfo->level != SMB2_OPLOCK_LEVEL_BATCH &&
1312 brk_opinfo->level != SMB2_OPLOCK_LEVEL_EXCLUSIVE) {
1313 opinfo_put(brk_opinfo);
1317 brk_opinfo->open_trunc = is_trunc;
1318 oplock_break(brk_opinfo, SMB2_OPLOCK_LEVEL_II, work);
1319 opinfo_put(brk_opinfo);