/fs/cifs/ |
D | ioctl.c | 43 struct cifs_tcon *tcon = cifs_sb_master_tcon(cifs_sb); in cifs_ioctl_query_info() local 66 if (tcon->ses->server->ops->ioctl_query_info) in cifs_ioctl_query_info() 67 rc = tcon->ses->server->ops->ioctl_query_info( in cifs_ioctl_query_info() 68 xid, tcon, utf16_path, in cifs_ioctl_query_info() 129 static long smb_mnt_get_fsinfo(unsigned int xid, struct cifs_tcon *tcon, in smb_mnt_get_fsinfo() argument 140 fsinf->protocol_id = tcon->ses->server->vals->protocol_id; in smb_mnt_get_fsinfo() 142 le32_to_cpu(tcon->fsDevInfo.DeviceCharacteristics); in smb_mnt_get_fsinfo() 143 fsinf->device_type = le32_to_cpu(tcon->fsDevInfo.DeviceType); in smb_mnt_get_fsinfo() 144 fsinf->fs_attributes = le32_to_cpu(tcon->fsAttrInfo.Attributes); in smb_mnt_get_fsinfo() 146 le32_to_cpu(tcon->fsAttrInfo.MaxPathNameComponentLength); in smb_mnt_get_fsinfo() [all …]
|
D | smb1ops.c | 433 cifs_negotiate_wsize(struct cifs_tcon *tcon, struct smb_vol *volume_info) in cifs_negotiate_wsize() argument 435 __u64 unix_cap = le64_to_cpu(tcon->fsUnixInfo.Capability); in cifs_negotiate_wsize() 436 struct TCP_Server_Info *server = tcon->ses->server; in cifs_negotiate_wsize() 442 else if (tcon->unix_ext && (unix_cap & CIFS_UNIX_LARGE_WRITE_CAP)) in cifs_negotiate_wsize() 448 if (!tcon->unix_ext || !(unix_cap & CIFS_UNIX_LARGE_WRITE_CAP)) in cifs_negotiate_wsize() 468 cifs_negotiate_rsize(struct cifs_tcon *tcon, struct smb_vol *volume_info) in cifs_negotiate_rsize() argument 470 __u64 unix_cap = le64_to_cpu(tcon->fsUnixInfo.Capability); in cifs_negotiate_rsize() 471 struct TCP_Server_Info *server = tcon->ses->server; in cifs_negotiate_rsize() 486 if (tcon->unix_ext && (unix_cap & CIFS_UNIX_LARGE_READ_CAP)) in cifs_negotiate_rsize() 509 cifs_qfs_tcon(const unsigned int xid, struct cifs_tcon *tcon) in cifs_qfs_tcon() argument [all …]
|
D | smb2inode.c | 51 smb2_compound_op(const unsigned int xid, struct cifs_tcon *tcon, in smb2_compound_op() argument 62 struct cifs_ses *ses = tcon->ses; in smb2_compound_op() 80 if (smb3_encryption_required(tcon)) in smb2_compound_op() 98 oparms.tcon = tcon; in smb2_compound_op() 111 rc = SMB2_open_init(tcon, &rqst[num_rqst], &oplock, &oparms, in smb2_compound_op() 117 smb2_set_next_command(tcon, &rqst[num_rqst]); in smb2_compound_op() 130 rc = SMB2_query_info_init(tcon, &rqst[num_rqst], in smb2_compound_op() 138 rc = SMB2_query_info_init(tcon, &rqst[num_rqst], in smb2_compound_op() 146 smb2_set_next_command(tcon, &rqst[num_rqst]); in smb2_compound_op() 154 trace_smb3_query_info_compound_enter(xid, ses->Suid, tcon->tid, in smb2_compound_op() [all …]
|
D | smb2proto.h | 69 extern int open_shroot(unsigned int xid, struct cifs_tcon *tcon, 74 extern int smb2_query_path_info(const unsigned int xid, struct cifs_tcon *tcon, 78 extern int smb2_set_path_size(const unsigned int xid, struct cifs_tcon *tcon, 84 umode_t mode, struct cifs_tcon *tcon, 88 umode_t mode, struct cifs_tcon *tcon, 92 struct cifs_tcon *tcon, const unsigned int xid); 93 extern int smb2_rmdir(const unsigned int xid, struct cifs_tcon *tcon, 95 extern int smb2_unlink(const unsigned int xid, struct cifs_tcon *tcon, 97 extern int smb2_rename_path(const unsigned int xid, struct cifs_tcon *tcon, 100 extern int smb2_create_hardlink(const unsigned int xid, struct cifs_tcon *tcon, [all …]
|
D | smb2pdu.c | 86 int smb3_encryption_required(const struct cifs_tcon *tcon) in smb3_encryption_required() argument 88 if (!tcon) 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 106 if (tcon && tcon->ses && tcon->ses->server) { in smb2_hdr_assemble() 107 struct TCP_Server_Info *server = tcon->ses->server; in smb2_hdr_assemble() 123 if (!tcon) in smb2_hdr_assemble() [all …]
|
D | cifsproto.h | 77 struct cifs_tcon *tcon, 140 extern int cifs_get_writable_path(struct cifs_tcon *tcon, const char *name, 143 extern int cifs_get_readable_path(struct cifs_tcon *tcon, const char *name, 231 extern void cifs_mark_open_files_invalid(struct cifs_tcon *tcon); 232 extern void cifs_reopen_persistent_handles(struct cifs_tcon *tcon); 247 extern void cifs_put_tcon(struct cifs_tcon *tcon); 270 const char *tree, struct cifs_tcon *tcon, 273 extern int CIFSFindFirst(const unsigned int xid, struct cifs_tcon *tcon, 279 extern int CIFSFindNext(const unsigned int xid, struct cifs_tcon *tcon, 283 extern int CIFSFindClose(const unsigned int xid, struct cifs_tcon *tcon, [all …]
|
D | link.c | 182 create_mf_symlink(const unsigned int xid, struct cifs_tcon *tcon, in create_mf_symlink() argument 198 if (tcon->ses->server->ops->create_mf_symlink) in create_mf_symlink() 199 rc = tcon->ses->server->ops->create_mf_symlink(xid, tcon, in create_mf_symlink() 215 query_mf_symlink(const unsigned int xid, struct cifs_tcon *tcon, in query_mf_symlink() argument 228 if (tcon->ses->server->ops->query_mf_symlink) in query_mf_symlink() 229 rc = tcon->ses->server->ops->query_mf_symlink(xid, tcon, in query_mf_symlink() 249 check_mf_symlink(unsigned int xid, struct cifs_tcon *tcon, in check_mf_symlink() argument 266 if (tcon->ses->server->ops->query_mf_symlink) in check_mf_symlink() 267 rc = tcon->ses->server->ops->query_mf_symlink(xid, tcon, in check_mf_symlink() 303 cifs_query_mf_symlink(unsigned int xid, struct cifs_tcon *tcon, in cifs_query_mf_symlink() argument [all …]
|
D | smb2ops.c | 321 smb2_negotiate_wsize(struct cifs_tcon *tcon, struct smb_vol *volume_info) in smb2_negotiate_wsize() argument 323 struct TCP_Server_Info *server = tcon->ses->server; in smb2_negotiate_wsize() 346 smb3_negotiate_wsize(struct cifs_tcon *tcon, struct smb_vol *volume_info) in smb3_negotiate_wsize() argument 348 struct TCP_Server_Info *server = tcon->ses->server; in smb3_negotiate_wsize() 371 smb2_negotiate_rsize(struct cifs_tcon *tcon, struct smb_vol *volume_info) in smb2_negotiate_rsize() argument 373 struct TCP_Server_Info *server = tcon->ses->server; in smb2_negotiate_rsize() 397 smb3_negotiate_rsize(struct cifs_tcon *tcon, struct smb_vol *volume_info) in smb3_negotiate_rsize() argument 399 struct TCP_Server_Info *server = tcon->ses->server; in smb3_negotiate_rsize() 557 SMB3_request_interfaces(const unsigned int xid, struct cifs_tcon *tcon) in SMB3_request_interfaces() argument 564 struct cifs_ses *ses = tcon->ses; in SMB3_request_interfaces() [all …]
|
D | dir.c | 50 struct cifs_tcon *tcon, int add_treename) in cifs_build_path_to_root() argument 63 dfsplen = strnlen(tcon->treeName, MAX_TREE_SIZE + 1); in cifs_build_path_to_root() 72 memcpy(full_path, tcon->treeName, dfsplen); in cifs_build_path_to_root() 84 struct cifs_tcon *tcon = cifs_sb_master_tcon(cifs_sb); in build_path_from_dentry() local 85 bool prefix = tcon->Flags & SMB_SHARE_IS_IN_DFS; in build_path_from_dentry() 101 struct cifs_tcon *tcon = cifs_sb_master_tcon(cifs_sb); in build_path_from_dentry_optional_prefix() local 106 dfsplen = strnlen(tcon->treeName, MAX_TREE_SIZE + 1); in build_path_from_dentry_optional_prefix() 183 strncpy(full_path, tcon->treeName, dfsplen); in build_path_from_dentry_optional_prefix() 201 check_name(struct dentry *direntry, struct cifs_tcon *tcon) in check_name() argument 206 if (unlikely(tcon->fsAttrInfo.MaxPathNameComponentLength && in check_name() [all …]
|
D | inode.c | 349 struct cifs_tcon *tcon = tlink_tcon(cfile->tlink); local 352 rc = CIFSSMBUnixQFileInfo(xid, tcon, cfile->fid.netfid, &find_data); 372 struct cifs_tcon *tcon; local 381 tcon = tlink_tcon(tlink); 384 rc = CIFSSMBUnixQPathInfo(xid, tcon, full_path, &find_data, 399 int tmprc = check_mf_symlink(xid, tcon, cifs_sb, &fattr, 444 struct cifs_tcon *tcon; local 470 tcon = tlink_tcon(tlink); 472 oparms.tcon = tcon; 483 if (tcon->ses->server->oplocks) [all …]
|
D | smb2misc.c | 513 smb2_tcon_has_lease(struct cifs_tcon *tcon, struct smb2_lease_break *rsp, in smb2_tcon_has_lease() argument 527 list_for_each(tmp, &tcon->openFileList) { in smb2_tcon_has_lease() 564 list_for_each_entry(open, &tcon->pending_opens, olist) { in smb2_tcon_has_lease() 594 struct cifs_tcon *tcon; in smb2_is_valid_lease_break() local 615 tcon = list_entry(tmp2, struct cifs_tcon, in smb2_is_valid_lease_break() 617 spin_lock(&tcon->open_file_lock); in smb2_is_valid_lease_break() 619 &tcon->stats.cifs_stats.num_oplock_brks); in smb2_is_valid_lease_break() 620 if (smb2_tcon_has_lease(tcon, rsp, lw)) { in smb2_is_valid_lease_break() 621 spin_unlock(&tcon->open_file_lock); in smb2_is_valid_lease_break() 625 spin_unlock(&tcon->open_file_lock); in smb2_is_valid_lease_break() [all …]
|
D | cifssmb.c | 98 cifs_mark_open_files_invalid(struct cifs_tcon *tcon) in cifs_mark_open_files_invalid() argument 105 spin_lock(&tcon->open_file_lock); in cifs_mark_open_files_invalid() 106 list_for_each_safe(tmp, tmp1, &tcon->openFileList) { in cifs_mark_open_files_invalid() 111 spin_unlock(&tcon->open_file_lock); in cifs_mark_open_files_invalid() 113 mutex_lock(&tcon->crfid.fid_mutex); in cifs_mark_open_files_invalid() 114 tcon->crfid.is_valid = false; in cifs_mark_open_files_invalid() 115 memset(tcon->crfid.fid, 0, sizeof(struct cifs_fid)); in cifs_mark_open_files_invalid() 116 mutex_unlock(&tcon->crfid.fid_mutex); in cifs_mark_open_files_invalid() 126 struct cifs_tcon *tcon) in __cifs_reconnect_tcon() argument 141 if (tcon->ipc) { in __cifs_reconnect_tcon() [all …]
|
D | cifsfs.c | 155 struct cifs_tcon *tcon; in cifs_read_super() local 160 tcon = cifs_sb_master_tcon(cifs_sb); in cifs_read_super() 165 if (tcon->snapshot_time) in cifs_read_super() 168 if (tcon->ses->capabilities & tcon->ses->server->vals->cap_large_files) in cifs_read_super() 180 if ((tcon->ses->server->vals->protocol_id == SMB10_PROT_ID) && in cifs_read_super() 181 ((tcon->ses->capabilities & in cifs_read_super() 182 tcon->ses->server->vals->cap_nt_find) == 0) && in cifs_read_super() 183 !tcon->unix_ext) { in cifs_read_super() 220 if (tcon->nocase) in cifs_read_super() 257 struct cifs_tcon *tcon = cifs_sb_master_tcon(cifs_sb); in cifs_statfs() local [all …]
|
D | fscache.c | 95 void cifs_fscache_get_super_cookie(struct cifs_tcon *tcon) in cifs_fscache_get_super_cookie() argument 97 struct TCP_Server_Info *server = tcon->ses->server; in cifs_fscache_get_super_cookie() 100 sharename = extract_sharename(tcon->treeName); in cifs_fscache_get_super_cookie() 103 tcon->fscache = NULL; in cifs_fscache_get_super_cookie() 107 tcon->fscache = in cifs_fscache_get_super_cookie() 111 &tcon->resource_id, sizeof(tcon->resource_id), in cifs_fscache_get_super_cookie() 112 tcon, 0, true); in cifs_fscache_get_super_cookie() 115 __func__, server->fscache, tcon->fscache); in cifs_fscache_get_super_cookie() 118 void cifs_fscache_release_super_cookie(struct cifs_tcon *tcon) in cifs_fscache_release_super_cookie() argument 120 cifs_dbg(FYI, "%s: (0x%p)\n", __func__, tcon->fscache); in cifs_fscache_release_super_cookie() [all …]
|
D | cifs_debug.c | 87 static void cifs_debug_tcon(struct seq_file *m, struct cifs_tcon *tcon) in cifs_debug_tcon() argument 89 __u32 dev_type = le32_to_cpu(tcon->fsDevInfo.DeviceType); in cifs_debug_tcon() 91 seq_printf(m, "%s Mounts: %d ", tcon->treeName, tcon->tc_count); in cifs_debug_tcon() 92 if (tcon->nativeFileSystem) in cifs_debug_tcon() 93 seq_printf(m, "Type: %s ", tcon->nativeFileSystem); in cifs_debug_tcon() 95 le32_to_cpu(tcon->fsDevInfo.DeviceCharacteristics), in cifs_debug_tcon() 96 le32_to_cpu(tcon->fsAttrInfo.Attributes), in cifs_debug_tcon() 97 le32_to_cpu(tcon->fsAttrInfo.MaxPathNameComponentLength), in cifs_debug_tcon() 98 tcon->tidStatus); in cifs_debug_tcon() 106 seq_printf(m, "Serial Number: 0x%x", tcon->vol_serial_number); in cifs_debug_tcon() [all …]
|
D | connect.c | 399 struct cifs_tcon *tcon; in super_cb() local 405 tcon = cifs_sb_master_tcon(cifs_sb); in super_cb() 406 if (tcon->ses->server == d->server) in super_cb() 493 struct cifs_tcon *tcon; in cifs_reconnect() local 555 tcon = list_entry(tmp2, struct cifs_tcon, tcon_list); in cifs_reconnect() 556 tcon->need_reconnect = true; in cifs_reconnect() 2935 struct cifs_tcon *tcon; in cifs_setup_ipc() local 2955 tcon = tconInfoAlloc(); in cifs_setup_ipc() 2956 if (tcon == NULL) in cifs_setup_ipc() 2965 tcon->ses = ses; in cifs_setup_ipc() [all …]
|
D | file.c | 124 struct cifs_tcon *tcon; in cifs_posix_open() local 138 tcon = tlink_tcon(tlink); in cifs_posix_open() 142 rc = CIFSPOSIXCreate(xid, tcon, posix_flags, mode, pnetfid, presp_data, in cifs_posix_open() 177 struct cifs_tcon *tcon, unsigned int f_flags, __u32 *oplock, in cifs_nt_open() argument 185 struct TCP_Server_Info *server = tcon->ses->server; in cifs_nt_open() 235 oparms.tcon = tcon; in cifs_nt_open() 249 if (tcon->unix_ext) in cifs_nt_open() 257 server->ops->close(xid, tcon, fid); in cifs_nt_open() 302 struct cifs_tcon *tcon = tlink_tcon(tlink); in cifs_new_fileinfo() local 303 struct TCP_Server_Info *server = tcon->ses->server; in cifs_new_fileinfo() [all …]
|
D | smb2file.c | 70 if (oparms->tcon->use_resilient) { in smb2_open_file() 73 cpu_to_le32(oparms->tcon->handle_timeout); in smb2_open_file() 75 rc = SMB2_ioctl(xid, oparms->tcon, fid->persistent_fid, in smb2_open_file() 83 oparms->tcon->use_resilient = false; in smb2_open_file() 93 rc = SMB2_get_srv_num(xid, oparms->tcon, in smb2_open_file() 123 struct cifs_tcon *tcon = tlink_tcon(cfile->tlink); in smb2_unlock_range() local 135 max_buf = tcon->ses->server->maxBuf; in smb2_unlock_range() 175 stored_rc = smb2_lockv(xid, tcon, in smb2_unlock_range() 200 stored_rc = smb2_lockv(xid, tcon, cfile->fid.persistent_fid, in smb2_unlock_range() 224 struct cifs_tcon *tcon = tlink_tcon(cfile->tlink); in smb2_push_mand_fdlocks() local [all …]
|
D | readdir.c | 275 struct cifs_tcon *tcon; in initiate_cifs_search() local 291 tcon = tlink_tcon(tlink); in initiate_cifs_search() 294 tcon = tlink_tcon(cifsFile->tlink); in initiate_cifs_search() 297 server = tcon->ses->server; in initiate_cifs_search() 319 if (tcon->unix_ext) in initiate_cifs_search() 321 else if ((tcon->ses->capabilities & in initiate_cifs_search() 322 tcon->ses->server->vals->cap_nt_find) == 0) { in initiate_cifs_search() 334 rc = server->ops->query_dir_first(xid, tcon, full_path, cifs_sb, in initiate_cifs_search() 572 find_cifs_entry(const unsigned int xid, struct cifs_tcon *tcon, loff_t pos, in find_cifs_entry() argument 582 struct TCP_Server_Info *server = tcon->ses->server; in find_cifs_entry() [all …]
|
D | cifsglob.h | 331 umode_t mode, struct cifs_tcon *tcon, 335 struct cifs_tcon *tcon, const char *name, 424 int (*set_integrity)(const unsigned int, struct cifs_tcon *tcon, 426 int (*enum_snapshots)(const unsigned int xid, struct cifs_tcon *tcon, 487 struct cifs_tcon *tcon, 494 struct cifs_tcon *tcon, 499 int (*fiemap)(struct cifs_tcon *tcon, struct cifsFileInfo *, 1020 struct cifs_tcon *tcon; member 1215 struct cifs_tcon *tcon; member 1278 struct cifs_tcon *tcon; member [all …]
|
D | dfs_cache.c | 1262 struct cifs_tcon *tcon; in get_tcons() local 1268 list_for_each_entry(tcon, &ses->tcon_list, tcon_list) { in get_tcons() 1269 if (!tcon->need_reconnect && !tcon->need_reopen_files && in get_tcons() 1270 tcon->dfs_path) { in get_tcons() 1271 tcon->tc_count++; in get_tcons() 1272 list_add_tail(&tcon->ulist, head); in get_tcons() 1314 struct cifs_tcon *tcon, const char *path) in find_root_ses() argument 1377 struct cifs_tcon *tcon) in do_refresh_tcon() argument 1390 path = tcon->dfs_path + 1; in do_refresh_tcon() 1410 ses = root_ses = find_root_ses(vi, tcon, npath); in do_refresh_tcon() [all …]
|
D | cifs_debug.h | 113 if (tcon && tcon->treeName) \ 114 tn = tcon->treeName; \ 158 pr_debug("%s " fmt, tcon->treeName, ##__VA_ARGS__); \
|
D | misc.c | 405 struct cifs_tcon *tcon; in is_valid_oplock_break() local 473 tcon = list_entry(tmp1, struct cifs_tcon, tcon_list); in is_valid_oplock_break() 474 if (tcon->tid != buf->Tid) in is_valid_oplock_break() 477 cifs_stats_inc(&tcon->stats.cifs_stats.num_oplock_brks); in is_valid_oplock_break() 478 spin_lock(&tcon->open_file_lock); in is_valid_oplock_break() 479 list_for_each(tmp2, &tcon->openFileList) { in is_valid_oplock_break() 507 spin_unlock(&tcon->open_file_lock); in is_valid_oplock_break() 511 spin_unlock(&tcon->open_file_lock); in is_valid_oplock_break() 536 struct cifs_tcon *tcon = NULL; in cifs_autodisable_serverino() local 539 tcon = cifs_sb_master_tcon(cifs_sb); in cifs_autodisable_serverino() [all …]
|
D | cifs_dfs_ref.c | 299 struct cifs_tcon *tcon; in cifs_dfs_do_automount() local 335 tcon = cifs_sb_master_tcon(cifs_sb); in cifs_dfs_do_automount() 336 if (!tcon) { in cifs_dfs_do_automount() 341 root_path = kstrdup(tcon->treeName, GFP_KERNEL); in cifs_dfs_do_automount() 348 ses = tcon->ses; in cifs_dfs_do_automount()
|
D | smb2transport.c | 130 struct cifs_tcon *tcon; in smb2_find_smb_sess_tcon_unlocked() local 132 list_for_each_entry(tcon, &ses->tcon_list, tcon_list) { in smb2_find_smb_sess_tcon_unlocked() 133 if (tcon->tid != tid) in smb2_find_smb_sess_tcon_unlocked() 135 ++tcon->tc_count; in smb2_find_smb_sess_tcon_unlocked() 136 return tcon; in smb2_find_smb_sess_tcon_unlocked() 151 struct cifs_tcon *tcon; in smb2_find_smb_tcon() local 159 tcon = smb2_find_smb_sess_tcon_unlocked(ses, tid); in smb2_find_smb_tcon() 162 return tcon; in smb2_find_smb_tcon()
|