• Home
  • Raw
  • Download

Lines Matching full:tcon

86 int smb3_encryption_required(const struct cifs_tcon *tcon)  in smb3_encryption_required()  argument
88 if (!tcon || !tcon->ses) in smb3_encryption_required()
90 if ((tcon->ses->session_flags & SMB2_SESSION_FLAG_ENCRYPT_DATA) || in smb3_encryption_required()
91 (tcon->share_flags & SHI1005_FLAGS_ENCRYPT_DATA)) in smb3_encryption_required()
93 if (tcon->seal && in smb3_encryption_required()
94 (tcon->ses->server->capabilities & SMB2_GLOBAL_CAP_ENCRYPTION)) in smb3_encryption_required()
101 const struct cifs_tcon *tcon, in smb2_hdr_assemble() argument
122 if (!tcon) in smb2_hdr_assemble()
131 shdr->TreeId = tcon->tid; in smb2_hdr_assemble()
133 if (tcon->ses) in smb2_hdr_assemble()
134 shdr->SessionId = tcon->ses->Suid; in smb2_hdr_assemble()
146 /* if (tcon->share_flags & SHI1005_FLAGS_DFS) in smb2_hdr_assemble()
149 if (server && server->sign && !smb3_encryption_required(tcon)) in smb2_hdr_assemble()
156 smb2_reconnect(__le16 smb2_command, struct cifs_tcon *tcon, in smb2_reconnect() argument
165 * SMB2s NegProt, SessSetup, Logoff do not have tcon yet so in smb2_reconnect()
169 if (tcon == NULL) in smb2_reconnect()
175 if (tcon->tidStatus == CifsExiting) { in smb2_reconnect()
178 * (and ulogoff which does not have tcon) in smb2_reconnect()
189 if ((!tcon->ses) || (tcon->ses->status == CifsExiting) || in smb2_reconnect()
190 (!tcon->ses->server) || !server) in smb2_reconnect()
193 ses = tcon->ses; in smb2_reconnect()
238 if (!tcon->retry) { in smb2_reconnect()
245 if (!tcon->ses->need_reconnect && !tcon->need_reconnect) in smb2_reconnect()
254 mutex_lock(&tcon->ses->session_mutex); in smb2_reconnect()
263 mutex_unlock(&tcon->ses->session_mutex); in smb2_reconnect()
275 rc = cifs_negotiate_protocol(0, tcon->ses); in smb2_reconnect()
276 if (!rc && tcon->ses->need_reconnect) { in smb2_reconnect()
277 rc = cifs_setup_session(0, tcon->ses, nls_codepage); in smb2_reconnect()
278 if ((rc == -EACCES) && !tcon->retry) { in smb2_reconnect()
282 mutex_unlock(&tcon->ses->session_mutex); in smb2_reconnect()
295 if (rc || !tcon->need_reconnect) { in smb2_reconnect()
296 mutex_unlock(&tcon->ses->session_mutex); in smb2_reconnect()
300 cifs_mark_open_files_invalid(tcon); in smb2_reconnect()
301 if (tcon->use_persistent) in smb2_reconnect()
302 tcon->need_reopen_files = true; in smb2_reconnect()
304 rc = cifs_tree_connect(0, tcon, nls_codepage); in smb2_reconnect()
305 mutex_unlock(&tcon->ses->session_mutex); in smb2_reconnect()
307 cifs_dbg(FYI, "reconnect tcon rc = %d\n", rc); in smb2_reconnect()
309 /* If sess reconnected but tcon didn't, something strange ... */ in smb2_reconnect()
310 pr_warn_once("reconnect tcon failed rc = %d\n", rc); in smb2_reconnect()
345 fill_small_buf(__le16 smb2_command, struct cifs_tcon *tcon, in fill_small_buf() argument
360 smb2_hdr_assemble(&spdu->sync_hdr, smb2_command, tcon, server); in fill_small_buf()
371 static int __smb2_plain_req_init(__le16 smb2_command, struct cifs_tcon *tcon, in __smb2_plain_req_init() argument
390 fill_small_buf(smb2_command, tcon, server, in __smb2_plain_req_init()
394 if (tcon != NULL) { in __smb2_plain_req_init()
396 cifs_stats_inc(&tcon->stats.smb2_stats.smb2_com_sent[com_code]); in __smb2_plain_req_init()
397 cifs_stats_inc(&tcon->num_smbs_sent); in __smb2_plain_req_init()
403 static int smb2_plain_req_init(__le16 smb2_command, struct cifs_tcon *tcon, in smb2_plain_req_init() argument
409 rc = smb2_reconnect(smb2_command, tcon, server); in smb2_plain_req_init()
413 return __smb2_plain_req_init(smb2_command, tcon, server, request_buf, in smb2_plain_req_init()
417 static int smb2_ioctl_req_init(u32 opcode, struct cifs_tcon *tcon, in smb2_ioctl_req_init() argument
423 return __smb2_plain_req_init(SMB2_IOCTL, tcon, server, in smb2_ioctl_req_init()
426 return smb2_plain_req_init(SMB2_IOCTL, tcon, server, in smb2_ioctl_req_init()
877 * No tcon so can't do in SMB2_negotiate()
878 * cifs_stats_inc(&tcon->stats.smb2_stats.smb2_com_fail[SMB2...]); in SMB2_negotiate()
1006 int smb3_validate_negotiate(const unsigned int xid, struct cifs_tcon *tcon) in smb3_validate_negotiate() argument
1013 struct TCP_Server_Info *server = tcon->ses->server; in smb3_validate_negotiate()
1028 if (tcon->ses->session_flags & SMB2_SESSION_FLAG_IS_GUEST) in smb3_validate_negotiate()
1031 if (tcon->ses->user_name == NULL) { in smb3_validate_negotiate()
1036 if (tcon->ses->session_flags & SMB2_SESSION_FLAG_IS_NULL) in smb3_validate_negotiate()
1045 if (tcon->ses->chan_max > 1) in smb3_validate_negotiate()
1051 if (tcon->ses->sign) in smb3_validate_negotiate()
1088 rc = SMB2_ioctl(xid, tcon, NO_FILE_ID, NO_FILE_ID, in smb3_validate_negotiate()
1665 /* since no tcon, smb2_init can not do this, so do here */ in SMB2_logoff()
1686 * No tcon so can't do in SMB2_logoff()
1687 * cifs_stats_inc(&tcon->stats.smb2_stats.smb2_com_fail[SMB2...]); in SMB2_logoff()
1694 static inline void cifs_stats_fail_inc(struct cifs_tcon *tcon, uint16_t code) in cifs_stats_fail_inc() argument
1696 cifs_stats_inc(&tcon->stats.smb2_stats.smb2_com_failed[code]); in cifs_stats_fail_inc()
1702 static inline void init_copy_chunk_defaults(struct cifs_tcon *tcon) in init_copy_chunk_defaults() argument
1704 tcon->max_chunks = 256; in init_copy_chunk_defaults()
1705 tcon->max_bytes_chunk = 1048576; in init_copy_chunk_defaults()
1706 tcon->max_bytes_copy = 16777216; in init_copy_chunk_defaults()
1711 struct cifs_tcon *tcon, const struct nls_table *cp) in SMB2_tcon() argument
1729 cifs_dbg(FYI, "TCON\n"); in SMB2_tcon()
1746 tcon->tid = 0; in SMB2_tcon()
1747 atomic_set(&tcon->num_remote_opens, 0); in SMB2_tcon()
1748 rc = smb2_plain_req_init(SMB2_TREE_CONNECT, tcon, server, in SMB2_tcon()
1755 if (smb3_encryption_required(tcon)) in SMB2_tcon()
1770 * 3.11 tcon req must be signed if not encrypted. See MS-SMB2 3.2.4.1.1 in SMB2_tcon()
1775 !smb3_encryption_required(tcon) && in SMB2_tcon()
1792 trace_smb3_tcon(xid, tcon->tid, ses->Suid, tree, rc); in SMB2_tcon()
1794 if (tcon) { in SMB2_tcon()
1795 cifs_stats_fail_inc(tcon, SMB2_TREE_CONNECT_HE); in SMB2_tcon()
1796 tcon->need_reconnect = true; in SMB2_tcon()
1806 tcon->pipe = true; in SMB2_tcon()
1810 tcon->print = true; in SMB2_tcon()
1819 tcon->share_flags = le32_to_cpu(rsp->ShareFlags); in SMB2_tcon()
1820 tcon->capabilities = rsp->Capabilities; /* we keep caps little endian */ in SMB2_tcon()
1821 tcon->maximal_access = le32_to_cpu(rsp->MaximalAccess); in SMB2_tcon()
1822 tcon->tidStatus = CifsGood; in SMB2_tcon()
1823 tcon->need_reconnect = false; in SMB2_tcon()
1824 tcon->tid = rsp->sync_hdr.TreeId; in SMB2_tcon()
1825 strlcpy(tcon->treeName, tree, sizeof(tcon->treeName)); in SMB2_tcon()
1828 ((tcon->share_flags & SHI1005_FLAGS_DFS) == 0)) in SMB2_tcon()
1831 if (tcon->seal && in SMB2_tcon()
1835 init_copy_chunk_defaults(tcon); in SMB2_tcon()
1837 rc = server->ops->validate_negotiate(xid, tcon); in SMB2_tcon()
1852 SMB2_tdis(const unsigned int xid, struct cifs_tcon *tcon) in SMB2_tdis() argument
1857 struct cifs_ses *ses = tcon->ses; in SMB2_tdis()
1869 if ((tcon->need_reconnect) || (tcon->ses->need_reconnect)) in SMB2_tdis()
1872 close_shroot_lease(&tcon->crfid); in SMB2_tdis()
1874 rc = smb2_plain_req_init(SMB2_TREE_DISCONNECT, tcon, ses->server, in SMB2_tdis()
1880 if (smb3_encryption_required(tcon)) in SMB2_tdis()
1896 cifs_stats_fail_inc(tcon, SMB2_TREE_DISCONNECT_HE); in SMB2_tdis()
2101 buf->dcontext.Timeout = cpu_to_le32(oparms->tcon->handle_timeout); in create_durable_v2_buf()
2492 umode_t mode, struct cifs_tcon *tcon, in smb311_posix_mkdir() argument
2499 struct cifs_ses *ses = tcon->ses; in smb311_posix_mkdir()
2528 rc = smb2_plain_req_init(SMB2_CREATE, tcon, server, in smb311_posix_mkdir()
2534 if (smb3_encryption_required(tcon)) in smb311_posix_mkdir()
2559 if (tcon->share_flags & SHI1005_FLAGS_DFS) { in smb311_posix_mkdir()
2565 tcon->treeName, utf16_path); in smb311_posix_mkdir()
2598 if (tcon->posix_extensions) { in smb311_posix_mkdir()
2612 trace_smb3_posix_mkdir_enter(xid, tcon->tid, ses->Suid, CREATE_NOT_FILE, in smb311_posix_mkdir()
2618 cifs_stats_fail_inc(tcon, SMB2_CREATE_HE); in smb311_posix_mkdir()
2619 trace_smb3_posix_mkdir_err(xid, tcon->tid, ses->Suid, in smb311_posix_mkdir()
2626 trace_smb3_posix_mkdir_done(xid, rsp->PersistentFileId, tcon->tid, in smb311_posix_mkdir()
2630 SMB2_close(xid, tcon, rsp->PersistentFileId, rsp->VolatileFileId); in smb311_posix_mkdir()
2645 SMB2_open_init(struct cifs_tcon *tcon, struct TCP_Server_Info *server, in SMB2_open_init() argument
2659 rc = smb2_plain_req_init(SMB2_CREATE, tcon, server, in SMB2_open_init()
2691 if (tcon->share_flags & SHI1005_FLAGS_DFS) { in SMB2_open_init()
2697 tcon->treeName, path); in SMB2_open_init()
2722 if ((!server->oplocks) || (tcon->no_lease)) in SMB2_open_init()
2748 tcon->use_persistent); in SMB2_open_init()
2753 if (tcon->posix_extensions) { in SMB2_open_init()
2766 if (tcon->snapshot_time) { in SMB2_open_init()
2775 rc = add_twarp_context(iov, &n_iov, tcon->snapshot_time); in SMB2_open_init()
2846 struct cifs_tcon *tcon = oparms->tcon; in SMB2_open() local
2847 struct cifs_ses *ses = tcon->ses; in SMB2_open()
2859 if (smb3_encryption_required(tcon)) in SMB2_open()
2867 rc = SMB2_open_init(tcon, server, in SMB2_open()
2872 trace_smb3_open_enter(xid, tcon->tid, tcon->ses->Suid, in SMB2_open()
2881 cifs_stats_fail_inc(tcon, SMB2_CREATE_HE); in SMB2_open()
2888 trace_smb3_open_err(xid, tcon->tid, ses->Suid, in SMB2_open()
2892 tcon->treeName); in SMB2_open()
2893 tcon->need_reconnect = true; in SMB2_open()
2897 trace_smb3_open_done(xid, rsp->PersistentFileId, tcon->tid, in SMB2_open()
2901 atomic_inc(&tcon->num_remote_opens); in SMB2_open()
2928 SMB2_ioctl_init(struct cifs_tcon *tcon, struct TCP_Server_Info *server, in SMB2_ioctl_init() argument
2940 rc = smb2_ioctl_req_init(opcode, tcon, server, in SMB2_ioctl_init()
3033 SMB2_ioctl(const unsigned int xid, struct cifs_tcon *tcon, u64 persistent_fid, in SMB2_ioctl() argument
3057 if (!tcon) in SMB2_ioctl()
3060 ses = tcon->ses; in SMB2_ioctl()
3068 if (smb3_encryption_required(tcon)) in SMB2_ioctl()
3076 rc = SMB2_ioctl_init(tcon, server, in SMB2_ioctl()
3088 trace_smb3_fsctl_err(xid, persistent_fid, tcon->tid, in SMB2_ioctl()
3092 cifs_stats_fail_inc(tcon, SMB2_IOCTL_HE); in SMB2_ioctl()
3097 cifs_stats_fail_inc(tcon, SMB2_IOCTL_HE); in SMB2_ioctl()
3102 cifs_stats_fail_inc(tcon, SMB2_IOCTL_HE); in SMB2_ioctl()
3149 SMB2_set_compression(const unsigned int xid, struct cifs_tcon *tcon, in SMB2_set_compression() argument
3159 rc = SMB2_ioctl(xid, tcon, persistent_fid, volatile_fid, in SMB2_set_compression()
3171 SMB2_close_init(struct cifs_tcon *tcon, struct TCP_Server_Info *server, in SMB2_close_init() argument
3180 rc = smb2_plain_req_init(SMB2_CLOSE, tcon, server, in SMB2_close_init()
3205 __SMB2_close(const unsigned int xid, struct cifs_tcon *tcon, in __SMB2_close() argument
3211 struct cifs_ses *ses = tcon->ses; in __SMB2_close()
3225 if (smb3_encryption_required(tcon)) in __SMB2_close()
3237 trace_smb3_close_enter(xid, persistent_fid, tcon->tid, ses->Suid); in __SMB2_close()
3238 rc = SMB2_close_init(tcon, server, in __SMB2_close()
3249 cifs_stats_fail_inc(tcon, SMB2_CLOSE_HE); in __SMB2_close()
3250 trace_smb3_close_err(xid, persistent_fid, tcon->tid, ses->Suid, in __SMB2_close()
3254 trace_smb3_close_done(xid, persistent_fid, tcon->tid, in __SMB2_close()
3264 atomic_dec(&tcon->num_remote_opens); in __SMB2_close()
3273 tmp_rc = smb2_handle_cancelled_close(tcon, persistent_fid, in __SMB2_close()
3283 SMB2_close(const unsigned int xid, struct cifs_tcon *tcon, in SMB2_close() argument
3286 return __SMB2_close(xid, tcon, persistent_fid, volatile_fid, NULL); in SMB2_close()
3345 SMB2_query_info_init(struct cifs_tcon *tcon, struct TCP_Server_Info *server, in SMB2_query_info_init() argument
3361 rc = smb2_plain_req_init(SMB2_QUERY_INFO, tcon, server, in SMB2_query_info_init()
3394 query_info(const unsigned int xid, struct cifs_tcon *tcon, in query_info() argument
3405 struct cifs_ses *ses = tcon->ses; in query_info()
3418 if (smb3_encryption_required(tcon)) in query_info()
3426 rc = SMB2_query_info_init(tcon, server, in query_info()
3433 trace_smb3_query_info_enter(xid, persistent_fid, tcon->tid, in query_info()
3441 cifs_stats_fail_inc(tcon, SMB2_QUERY_INFO_HE); in query_info()
3442 trace_smb3_query_info_err(xid, persistent_fid, tcon->tid, in query_info()
3447 trace_smb3_query_info_done(xid, persistent_fid, tcon->tid, in query_info()
3481 int SMB2_query_info(const unsigned int xid, struct cifs_tcon *tcon, in SMB2_query_info() argument
3484 return query_info(xid, tcon, persistent_fid, volatile_fid, in SMB2_query_info()
3492 SMB311_posix_query_info(const unsigned int xid, struct cifs_tcon *tcon, in SMB311_posix_query_info() argument
3499 return query_info(xid, tcon, persistent_fid, volatile_fid, in SMB311_posix_query_info()
3505 SMB2_query_acl(const unsigned int xid, struct cifs_tcon *tcon, in SMB2_query_acl() argument
3512 return query_info(xid, tcon, persistent_fid, volatile_fid, in SMB2_query_acl()
3518 SMB2_get_srv_num(const unsigned int xid, struct cifs_tcon *tcon, in SMB2_get_srv_num() argument
3521 return query_info(xid, tcon, persistent_fid, volatile_fid, in SMB2_get_srv_num()
3535 struct cifs_tcon *tcon, struct TCP_Server_Info *server, in SMB2_notify_init() argument
3544 rc = smb2_plain_req_init(SMB2_CHANGE_NOTIFY, tcon, server, in SMB2_notify_init()
3567 SMB2_change_notify(const unsigned int xid, struct cifs_tcon *tcon, in SMB2_change_notify() argument
3571 struct cifs_ses *ses = tcon->ses; in SMB2_change_notify()
3584 if (smb3_encryption_required(tcon)) in SMB2_change_notify()
3592 rc = SMB2_notify_init(xid, &rqst, tcon, server, in SMB2_change_notify()
3598 trace_smb3_notify_enter(xid, persistent_fid, tcon->tid, ses->Suid, in SMB2_change_notify()
3604 cifs_stats_fail_inc(tcon, SMB2_CHANGE_NOTIFY_HE); in SMB2_change_notify()
3605 trace_smb3_notify_err(xid, persistent_fid, tcon->tid, ses->Suid, in SMB2_change_notify()
3608 trace_smb3_notify_done(xid, persistent_fid, tcon->tid, in SMB2_change_notify()
3649 struct cifs_tcon *tcon, *tcon2; in smb2_reconnect_server() local
3656 /* Prevent simultaneous reconnects that can corrupt tcon->rlist list */ in smb2_reconnect_server()
3664 list_for_each_entry(tcon, &ses->tcon_list, tcon_list) { in smb2_reconnect_server()
3665 if (tcon->need_reconnect || tcon->need_reopen_files) { in smb2_reconnect_server()
3666 tcon->tc_count++; in smb2_reconnect_server()
3667 list_add_tail(&tcon->rlist, &tmp_list); in smb2_reconnect_server()
3690 list_for_each_entry_safe(tcon, tcon2, &tmp_list, rlist) { in smb2_reconnect_server()
3691 rc = smb2_reconnect(SMB2_INTERNAL_CMD, tcon, server); in smb2_reconnect_server()
3693 cifs_reopen_persistent_handles(tcon); in smb2_reconnect_server()
3696 list_del_init(&tcon->rlist); in smb2_reconnect_server()
3697 if (tcon->ipc) in smb2_reconnect_server()
3698 cifs_put_smb_ses(tcon->ses); in smb2_reconnect_server()
3700 cifs_put_tcon(tcon); in smb2_reconnect_server()
3759 struct cifs_tcon *tcon, struct TCP_Server_Info *server, in SMB2_flush_init() argument
3767 rc = smb2_plain_req_init(SMB2_FLUSH, tcon, server, in SMB2_flush_init()
3782 SMB2_flush(const unsigned int xid, struct cifs_tcon *tcon, u64 persistent_fid, in SMB2_flush() argument
3785 struct cifs_ses *ses = tcon->ses; in SMB2_flush()
3798 if (smb3_encryption_required(tcon)) in SMB2_flush()
3806 rc = SMB2_flush_init(xid, &rqst, tcon, server, in SMB2_flush()
3811 trace_smb3_flush_enter(xid, persistent_fid, tcon->tid, ses->Suid); in SMB2_flush()
3816 cifs_stats_fail_inc(tcon, SMB2_FLUSH_HE); in SMB2_flush()
3817 trace_smb3_flush_err(xid, persistent_fid, tcon->tid, ses->Suid, in SMB2_flush()
3820 trace_smb3_flush_done(xid, persistent_fid, tcon->tid, in SMB2_flush()
3843 rc = smb2_plain_req_init(SMB2_READ, io_parms->tcon, server, in smb2_new_read_req()
3865 io_parms->tcon->tid, io_parms->tcon->ses->Suid, in smb2_new_read_req()
3932 struct cifs_tcon *tcon = tlink_tcon(rdata->cfile->tlink); in smb2_readv_callback() local
3971 cifs_stats_bytes_read(tcon, rdata->got_bytes); in smb2_readv_callback()
3981 cifs_stats_bytes_read(tcon, rdata->got_bytes); in smb2_readv_callback()
4002 cifs_stats_fail_inc(tcon, SMB2_READ_HE); in smb2_readv_callback()
4005 tcon->tid, tcon->ses->Suid, rdata->offset, in smb2_readv_callback()
4010 tcon->tid, tcon->ses->Suid, in smb2_readv_callback()
4029 struct cifs_tcon *tcon = tlink_tcon(rdata->cfile->tlink); in smb2_async_readv() local
4036 rdata->server = cifs_pick_channel(tcon->ses); in smb2_async_readv()
4038 io_parms.tcon = tlink_tcon(rdata->cfile->tlink); in smb2_async_readv()
4051 if (smb3_encryption_required(io_parms.tcon)) in smb2_async_readv()
4078 cifs_stats_fail_inc(io_parms.tcon, SMB2_READ_HE); in smb2_async_readv()
4080 io_parms.tcon->tid, in smb2_async_readv()
4081 io_parms.tcon->ses->Suid, in smb2_async_readv()
4102 struct cifs_ses *ses = io_parms->tcon->ses; in SMB2_read()
4105 io_parms->server = cifs_pick_channel(io_parms->tcon->ses); in SMB2_read()
4112 if (smb3_encryption_required(io_parms->tcon)) in SMB2_read()
4128 cifs_stats_fail_inc(io_parms->tcon, SMB2_READ_HE); in SMB2_read()
4131 io_parms->tcon->tid, ses->Suid, in SMB2_read()
4136 io_parms->tcon->tid, ses->Suid, in SMB2_read()
4143 io_parms->tcon->tid, ses->Suid, in SMB2_read()
4178 struct cifs_tcon *tcon = tlink_tcon(wdata->cfile->tlink); in smb2_writev_callback() local
4237 cifs_stats_fail_inc(tcon, SMB2_WRITE_HE); in smb2_writev_callback()
4240 tcon->tid, tcon->ses->Suid, wdata->offset, in smb2_writev_callback()
4244 tcon->treeName); in smb2_writev_callback()
4248 tcon->tid, tcon->ses->Suid, in smb2_writev_callback()
4264 struct cifs_tcon *tcon = tlink_tcon(wdata->cfile->tlink); in smb2_async_writev() local
4271 server = wdata->server = cifs_pick_channel(tcon->ses); in smb2_async_writev()
4273 rc = smb2_plain_req_init(SMB2_WRITE, tcon, server, in smb2_async_writev()
4278 if (smb3_encryption_required(tcon)) in smb2_async_writev()
4295 tcon->tid, tcon->ses->Suid, wdata->offset, wdata->bytes); in smb2_async_writev()
4383 tcon->tid, tcon->ses->Suid, wdata->offset, in smb2_async_writev()
4386 cifs_stats_fail_inc(tcon, SMB2_WRITE_HE); in smb2_async_writev()
4420 io_parms->server = cifs_pick_channel(io_parms->tcon->ses); in SMB2_write()
4425 rc = smb2_plain_req_init(SMB2_WRITE, io_parms->tcon, server, in SMB2_write()
4430 if (smb3_encryption_required(io_parms->tcon)) in SMB2_write()
4447 io_parms->tcon->tid, io_parms->tcon->ses->Suid, in SMB2_write()
4458 rc = cifs_send_recv(xid, io_parms->tcon->ses, server, in SMB2_write()
4465 io_parms->tcon->tid, in SMB2_write()
4466 io_parms->tcon->ses->Suid, in SMB2_write()
4468 cifs_stats_fail_inc(io_parms->tcon, SMB2_WRITE_HE); in SMB2_write()
4473 io_parms->tcon->tid, in SMB2_write()
4474 io_parms->tcon->ses->Suid, in SMB2_write()
4633 struct cifs_tcon *tcon, in SMB2_query_directory_init() argument
4649 rc = smb2_plain_req_init(SMB2_QUERY_DIRECTORY, tcon, server, in SMB2_query_directory_init()
4696 trace_smb3_query_dir_enter(xid, persistent_fid, tcon->tid, in SMB2_query_directory_init()
4697 tcon->ses->Suid, index, output_size); in SMB2_query_directory_init()
4710 smb2_parse_query_directory(struct cifs_tcon *tcon, in smb2_parse_query_directory() argument
4782 SMB2_query_directory(const unsigned int xid, struct cifs_tcon *tcon, in SMB2_query_directory() argument
4792 struct cifs_ses *ses = tcon->ses; in SMB2_query_directory()
4799 if (smb3_encryption_required(tcon)) in SMB2_query_directory()
4807 rc = SMB2_query_directory_init(xid, tcon, server, in SMB2_query_directory()
4822 tcon->tid, tcon->ses->Suid, index, 0); in SMB2_query_directory()
4826 trace_smb3_query_dir_err(xid, persistent_fid, tcon->tid, in SMB2_query_directory()
4827 tcon->ses->Suid, index, 0, rc); in SMB2_query_directory()
4828 cifs_stats_fail_inc(tcon, SMB2_QUERY_DIRECTORY_HE); in SMB2_query_directory()
4833 rc = smb2_parse_query_directory(tcon, &rsp_iov, resp_buftype, in SMB2_query_directory()
4836 trace_smb3_query_dir_err(xid, persistent_fid, tcon->tid, in SMB2_query_directory()
4837 tcon->ses->Suid, index, 0, rc); in SMB2_query_directory()
4842 trace_smb3_query_dir_done(xid, persistent_fid, tcon->tid, in SMB2_query_directory()
4843 tcon->ses->Suid, index, srch_inf->entries_in_buffer); in SMB2_query_directory()
4852 SMB2_set_info_init(struct cifs_tcon *tcon, struct TCP_Server_Info *server, in SMB2_set_info_init() argument
4863 rc = smb2_plain_req_init(SMB2_SET_INFO, tcon, server, in SMB2_set_info_init()
4903 send_set_info(const unsigned int xid, struct cifs_tcon *tcon, in send_set_info() argument
4914 struct cifs_ses *ses = tcon->ses; in send_set_info()
4924 if (smb3_encryption_required(tcon)) in send_set_info()
4935 rc = SMB2_set_info_init(tcon, server, in send_set_info()
4952 cifs_stats_fail_inc(tcon, SMB2_SET_INFO_HE); in send_set_info()
4953 trace_smb3_set_info_err(xid, persistent_fid, tcon->tid, in send_set_info()
4963 SMB2_set_eof(const unsigned int xid, struct cifs_tcon *tcon, u64 persistent_fid, in SMB2_set_eof() argument
4975 return send_set_info(xid, tcon, persistent_fid, volatile_fid, in SMB2_set_eof()
4981 SMB2_set_acl(const unsigned int xid, struct cifs_tcon *tcon, in SMB2_set_acl() argument
4985 return send_set_info(xid, tcon, persistent_fid, volatile_fid, in SMB2_set_acl()
4991 SMB2_set_ea(const unsigned int xid, struct cifs_tcon *tcon, in SMB2_set_ea() argument
4995 return send_set_info(xid, tcon, persistent_fid, volatile_fid, in SMB2_set_ea()
5001 SMB2_oplock_break(const unsigned int xid, struct cifs_tcon *tcon, in SMB2_oplock_break() argument
5008 struct cifs_ses *ses = tcon->ses; in SMB2_oplock_break()
5017 rc = smb2_plain_req_init(SMB2_OPLOCK_BREAK, tcon, server, in SMB2_oplock_break()
5022 if (smb3_encryption_required(tcon)) in SMB2_oplock_break()
5044 cifs_stats_fail_inc(tcon, SMB2_OPLOCK_BREAK_HE); in SMB2_oplock_break()
5083 build_qfs_info_req(struct kvec *iov, struct cifs_tcon *tcon, in build_qfs_info_req() argument
5094 if ((tcon->ses == NULL) || server == NULL) in build_qfs_info_req()
5097 rc = smb2_plain_req_init(SMB2_QUERY_INFO, tcon, server, in build_qfs_info_req()
5123 SMB311_posix_qfs_info(const unsigned int xid, struct cifs_tcon *tcon, in SMB311_posix_qfs_info() argument
5132 struct cifs_ses *ses = tcon->ses; in SMB311_posix_qfs_info()
5137 rc = build_qfs_info_req(&iov, tcon, server, in SMB311_posix_qfs_info()
5144 if (smb3_encryption_required(tcon)) in SMB311_posix_qfs_info()
5155 cifs_stats_fail_inc(tcon, SMB2_QUERY_INFO_HE); in SMB311_posix_qfs_info()
5174 SMB2_QFS_info(const unsigned int xid, struct cifs_tcon *tcon, in SMB2_QFS_info() argument
5183 struct cifs_ses *ses = tcon->ses; in SMB2_QFS_info()
5188 rc = build_qfs_info_req(&iov, tcon, server, in SMB2_QFS_info()
5195 if (smb3_encryption_required(tcon)) in SMB2_QFS_info()
5206 cifs_stats_fail_inc(tcon, SMB2_QUERY_INFO_HE); in SMB2_QFS_info()
5225 SMB2_QFS_attr(const unsigned int xid, struct cifs_tcon *tcon, in SMB2_QFS_attr() argument
5234 struct cifs_ses *ses = tcon->ses; in SMB2_QFS_attr()
5256 rc = build_qfs_info_req(&iov, tcon, server, in SMB2_QFS_attr()
5262 if (smb3_encryption_required(tcon)) in SMB2_QFS_attr()
5273 cifs_stats_fail_inc(tcon, SMB2_QUERY_INFO_HE); in SMB2_QFS_attr()
5285 memcpy(&tcon->fsAttrInfo, offset in SMB2_QFS_attr()
5289 memcpy(&tcon->fsDevInfo, offset in SMB2_QFS_attr()
5294 tcon->ss_flags = le32_to_cpu(ss_info->Flags); in SMB2_QFS_attr()
5295 tcon->perf_sector_size = in SMB2_QFS_attr()
5300 tcon->vol_serial_number = vol_info->VolumeSerialNumber; in SMB2_QFS_attr()
5301 tcon->vol_create_time = vol_info->VolumeCreationTime; in SMB2_QFS_attr()
5310 smb2_lockv(const unsigned int xid, struct cifs_tcon *tcon, in smb2_lockv() argument
5323 struct TCP_Server_Info *server = cifs_pick_channel(tcon->ses); in smb2_lockv()
5327 rc = smb2_plain_req_init(SMB2_LOCK, tcon, server, in smb2_lockv()
5332 if (smb3_encryption_required(tcon)) in smb2_lockv()
5348 cifs_stats_inc(&tcon->stats.cifs_stats.num_locks); in smb2_lockv()
5354 rc = cifs_send_recv(xid, tcon->ses, server, in smb2_lockv()
5360 cifs_stats_fail_inc(tcon, SMB2_LOCK_HE); in smb2_lockv()
5361 trace_smb3_lock_err(xid, persist_fid, tcon->tid, in smb2_lockv()
5362 tcon->ses->Suid, rc); in smb2_lockv()
5369 SMB2_lock(const unsigned int xid, struct cifs_tcon *tcon, in SMB2_lock() argument
5382 return smb2_lockv(xid, tcon, persist_fid, volatile_fid, pid, 1, &lock); in SMB2_lock()
5386 SMB2_lease_break(const unsigned int xid, struct cifs_tcon *tcon, in SMB2_lease_break() argument
5392 struct cifs_ses *ses = tcon->ses; in SMB2_lease_break()
5400 struct TCP_Server_Info *server = cifs_pick_channel(tcon->ses); in SMB2_lease_break()
5403 rc = smb2_plain_req_init(SMB2_OPLOCK_BREAK, tcon, server, in SMB2_lease_break()
5408 if (smb3_encryption_required(tcon)) in SMB2_lease_break()
5434 cifs_stats_fail_inc(tcon, SMB2_OPLOCK_BREAK_HE); in SMB2_lease_break()
5435 trace_smb3_lease_err(le32_to_cpu(lease_state), tcon->tid, in SMB2_lease_break()
5439 trace_smb3_lease_done(le32_to_cpu(lease_state), tcon->tid, in SMB2_lease_break()