Commit c5dbc2ed authored by Linus Torvalds's avatar Linus Torvalds

Merge tag '6.10-rc2-smb3-client-fixes' of git://git.samba.org/sfrench/cifs-2.6

Pull smb client fixes from Steve French:
 "Two small smb3 client fixes:

   - fix deadlock in umount

   - minor cleanup due to netfs change"

* tag '6.10-rc2-smb3-client-fixes' of git://git.samba.org/sfrench/cifs-2.6:
  cifs: Don't advance the I/O iterator before terminating subrequest
  smb: client: fix deadlock in smb2_find_smb_tcon()
parents 061d1af7 a88d6090
...@@ -4577,8 +4577,6 @@ smb2_readv_callback(struct mid_q_entry *mid) ...@@ -4577,8 +4577,6 @@ smb2_readv_callback(struct mid_q_entry *mid)
if (rdata->subreq.start < rdata->subreq.rreq->i_size) if (rdata->subreq.start < rdata->subreq.rreq->i_size)
rdata->result = 0; rdata->result = 0;
} }
if (rdata->result == 0 || rdata->result == -EAGAIN)
iov_iter_advance(&rdata->subreq.io_iter, rdata->got_bytes);
rdata->credits.value = 0; rdata->credits.value = 0;
netfs_subreq_terminated(&rdata->subreq, netfs_subreq_terminated(&rdata->subreq,
(rdata->result == 0 || rdata->result == -EAGAIN) ? (rdata->result == 0 || rdata->result == -EAGAIN) ?
...@@ -4789,7 +4787,6 @@ smb2_writev_callback(struct mid_q_entry *mid) ...@@ -4789,7 +4787,6 @@ smb2_writev_callback(struct mid_q_entry *mid)
wdata->result = -ENOSPC; wdata->result = -ENOSPC;
else else
wdata->subreq.len = written; wdata->subreq.len = written;
iov_iter_advance(&wdata->subreq.io_iter, written);
break; break;
case MID_REQUEST_SUBMITTED: case MID_REQUEST_SUBMITTED:
case MID_RETRY_NEEDED: case MID_RETRY_NEEDED:
......
...@@ -216,8 +216,8 @@ smb2_find_smb_tcon(struct TCP_Server_Info *server, __u64 ses_id, __u32 tid) ...@@ -216,8 +216,8 @@ smb2_find_smb_tcon(struct TCP_Server_Info *server, __u64 ses_id, __u32 tid)
} }
tcon = smb2_find_smb_sess_tcon_unlocked(ses, tid); tcon = smb2_find_smb_sess_tcon_unlocked(ses, tid);
if (!tcon) { if (!tcon) {
cifs_put_smb_ses(ses);
spin_unlock(&cifs_tcp_ses_lock); spin_unlock(&cifs_tcp_ses_lock);
cifs_put_smb_ses(ses);
return NULL; return NULL;
} }
spin_unlock(&cifs_tcp_ses_lock); spin_unlock(&cifs_tcp_ses_lock);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment