SMB3 client multichannel fix
-----BEGIN PGP SIGNATURE----- iQGzBAABCgAdFiEE6fsu8pdIjtWE/DpLiiy9cAdyT1EFAmevfUkACgkQiiy9cAdy T1HFFwv/YX8A6tU8DKrZXYCEL3q6/0ing7x5uR/Qd1nls8Y+bFDLoDKWWEt4YJyY Sv8u9Z5OVA0jzx6/m7zlDRptIj40cvSeYHN8+vZJjgO0d+l7HPYAFAKHwsxeT3a0 O7XkWtTcoV+WCVUy6bmaGw6LrH7WyVyQdShNKMnwTyxv2aHoEyFistnFK17eoyKk +QGQtAl9yGKeX5a+OwM25rUIgA2WmKlJruZd2aSe7GlL5kI7jQrO+LJna8UsB3gH D5w/Be4R3hzfuRDNDsb7A3uObs8lMV9PZMIj1Ur09ThikoGXg3D7pisaLEUe4QMN 2ja24PRCS+7Nz4Ba2RZqll9zMUethbl3MOv7g2agt99yUJtzy197d/HMtrRSFwpM EaM7FUbwPxedI+NgVNelFICTWt+paeFqK1m7EU1ArJZ68XMpZdY6gyzsvOOAZBG8 uKhAwruLMiCA5Ix93m131jz0tXBnSdSUFAWHqRttCBumW91+Lie1tXLGkmhjjzWc OXDsH9ea =nttU -----END PGP SIGNATURE----- Merge tag 'v6.14-rc2-smb3-client-fixes' of git://git.samba.org/sfrench/cifs-2.6 Pull smb client fix from Steve French: "SMB3 client multichannel fix" * tag 'v6.14-rc2-smb3-client-fixes' of git://git.samba.org/sfrench/cifs-2.6: cifs: pick channels for individual subrequests
This commit is contained in:
commit
cabb162eb5
2 changed files with 4 additions and 4 deletions
|
@ -1508,7 +1508,6 @@ struct cifs_io_parms {
|
|||
struct cifs_io_request {
|
||||
struct netfs_io_request rreq;
|
||||
struct cifsFileInfo *cfile;
|
||||
struct TCP_Server_Info *server;
|
||||
pid_t pid;
|
||||
};
|
||||
|
||||
|
|
|
@ -147,7 +147,7 @@ static int cifs_prepare_read(struct netfs_io_subrequest *subreq)
|
|||
struct netfs_io_request *rreq = subreq->rreq;
|
||||
struct cifs_io_subrequest *rdata = container_of(subreq, struct cifs_io_subrequest, subreq);
|
||||
struct cifs_io_request *req = container_of(subreq->rreq, struct cifs_io_request, rreq);
|
||||
struct TCP_Server_Info *server = req->server;
|
||||
struct TCP_Server_Info *server;
|
||||
struct cifs_sb_info *cifs_sb = CIFS_SB(rreq->inode->i_sb);
|
||||
size_t size;
|
||||
int rc = 0;
|
||||
|
@ -156,6 +156,8 @@ static int cifs_prepare_read(struct netfs_io_subrequest *subreq)
|
|||
rdata->xid = get_xid();
|
||||
rdata->have_xid = true;
|
||||
}
|
||||
|
||||
server = cifs_pick_channel(tlink_tcon(req->cfile->tlink)->ses);
|
||||
rdata->server = server;
|
||||
|
||||
if (cifs_sb->ctx->rsize == 0)
|
||||
|
@ -198,7 +200,7 @@ static void cifs_issue_read(struct netfs_io_subrequest *subreq)
|
|||
struct netfs_io_request *rreq = subreq->rreq;
|
||||
struct cifs_io_subrequest *rdata = container_of(subreq, struct cifs_io_subrequest, subreq);
|
||||
struct cifs_io_request *req = container_of(subreq->rreq, struct cifs_io_request, rreq);
|
||||
struct TCP_Server_Info *server = req->server;
|
||||
struct TCP_Server_Info *server = rdata->server;
|
||||
int rc = 0;
|
||||
|
||||
cifs_dbg(FYI, "%s: op=%08x[%x] mapping=%p len=%zu/%zu\n",
|
||||
|
@ -266,7 +268,6 @@ static int cifs_init_request(struct netfs_io_request *rreq, struct file *file)
|
|||
open_file = file->private_data;
|
||||
rreq->netfs_priv = file->private_data;
|
||||
req->cfile = cifsFileInfo_get(open_file);
|
||||
req->server = cifs_pick_channel(tlink_tcon(req->cfile->tlink)->ses);
|
||||
if (cifs_sb->mnt_cifs_flags & CIFS_MOUNT_RWPIDFORWARD)
|
||||
req->pid = req->cfile->pid;
|
||||
} else if (rreq->origin != NETFS_WRITEBACK) {
|
||||
|
|
Loading…
Add table
Reference in a new issue