Lines Matching defs:brk_opinfo
877 static int oplock_break(struct oplock_info *brk_opinfo, int req_op_level)
884 brk_opinfo->level);
886 if (brk_opinfo->is_lease) {
887 struct lease *lease = brk_opinfo->o_lease;
889 atomic_inc(&brk_opinfo->breaking_cnt);
891 err = oplock_break_pending(brk_opinfo, req_op_level);
895 if (brk_opinfo->open_trunc) {
922 brk_opinfo->op_state = OPLOCK_ACK_WAIT;
924 atomic_dec(&brk_opinfo->breaking_cnt);
926 err = oplock_break_pending(brk_opinfo, req_op_level);
930 if (brk_opinfo->level == SMB2_OPLOCK_LEVEL_BATCH ||
931 brk_opinfo->level == SMB2_OPLOCK_LEVEL_EXCLUSIVE)
932 brk_opinfo->op_state = OPLOCK_ACK_WAIT;
935 if (brk_opinfo->is_lease)
936 err = smb2_lease_break_noti(brk_opinfo);
938 err = smb2_oplock_break_noti(brk_opinfo);
940 ksmbd_debug(OPLOCK, "oplock granted = %d\n", brk_opinfo->level);
941 if (brk_opinfo->op_state == OPLOCK_CLOSING)
943 wake_up_oplock_break(brk_opinfo);
945 wait_lease_breaking(brk_opinfo);
1325 struct oplock_info *brk_opinfo;
1327 brk_opinfo = opinfo_get_list(fp->f_ci);
1328 if (!brk_opinfo)
1330 if (brk_opinfo->level != SMB2_OPLOCK_LEVEL_BATCH &&
1331 brk_opinfo->level != SMB2_OPLOCK_LEVEL_EXCLUSIVE) {
1332 opinfo_conn_put(brk_opinfo);
1336 brk_opinfo->open_trunc = is_trunc;
1337 list_add(&work->interim_entry, &brk_opinfo->interim_list);
1338 oplock_break(brk_opinfo, SMB2_OPLOCK_LEVEL_II);
1339 opinfo_conn_put(brk_opinfo);