| /linux/fs/nfs/ |
| H A D | inode.c | 70 nfs_fattr_to_ino_t(struct nfs_fattr *fattr) in nfs_fattr_to_ino_t() argument 72 return nfs_fileid_to_ino_t(fattr->fileid); in nfs_fattr_to_ino_t() 312 struct nfs_fattr *fattr; member 326 struct nfs_fattr *fattr = desc->fattr; in nfs_find_actor() local 328 if (NFS_FILEID(inode) != fattr->fileid) in nfs_find_actor() 330 if (inode_wrong_type(inode, fattr->mode)) in nfs_find_actor() 343 struct nfs_fattr *fattr = desc->fattr; in nfs_init_locked() local 345 set_nfs_fileid(inode, fattr->fileid); in nfs_init_locked() 346 inode->i_mode = fattr->mode; in nfs_init_locked() 359 void nfs_setsecurity(struct inode *inode, struct nfs_fattr *fattr) in nfs_setsecurity() argument [all …]
|
| H A D | export.c | 67 struct nfs_fattr *fattr = NULL; in nfs_fh_to_dentry() local 88 fattr = nfs_alloc_fattr_with_label(NFS_SB(sb)); in nfs_fh_to_dentry() 89 if (fattr == NULL) { in nfs_fh_to_dentry() 94 fattr->fileid = ((u64)p[FILEID_HIGH_OFF] << 32) + p[FILEID_LOW_OFF]; in nfs_fh_to_dentry() 95 fattr->mode = p[FILE_I_TYPE_OFF]; in nfs_fh_to_dentry() 96 fattr->valid |= NFS_ATTR_FATTR_FILEID | NFS_ATTR_FATTR_TYPE; in nfs_fh_to_dentry() 98 dprintk("%s: fileid %llu mode %d\n", __func__, fattr->fileid, fattr->mode); in nfs_fh_to_dentry() 100 inode = nfs_ilookup(sb, fattr, server_fh); in nfs_fh_to_dentry() 105 ret = rpc_ops->getattr(NFS_SB(sb), server_fh, fattr, NULL); in nfs_fh_to_dentry() 108 trace_nfs_fh_to_dentry(sb, server_fh, fattr->fileid, ret); in nfs_fh_to_dentry() [all …]
|
| H A D | nfs4getroot.c | 15 struct nfs_fattr *fattr = nfs_alloc_fattr(); in nfs4_get_rootfh() local 18 if (fattr == NULL) in nfs4_get_rootfh() 22 ret = nfs4_proc_get_rootfh(server, mntfh, fattr, auth_probe); in nfs4_get_rootfh() 28 if (!(fattr->valid & NFS_ATTR_FATTR_TYPE) || !S_ISDIR(fattr->mode)) { in nfs4_get_rootfh() 35 memcpy(&server->fsid, &fattr->fsid, sizeof(server->fsid)); in nfs4_get_rootfh() 37 nfs_free_fattr(fattr); in nfs4_get_rootfh()
|
| H A D | nfs3proc.c | 72 nfs_fattr_init(info->fattr); in do_proc_get_root() 75 if (status == 0 && !(info->fattr->valid & NFS_ATTR_FATTR)) { in do_proc_get_root() 77 msg.rpc_resp = info->fattr; in do_proc_get_root() 104 struct nfs_fattr *fattr, struct inode *inode) in nfs3_proc_getattr() argument 109 .rpc_resp = fattr, in nfs3_proc_getattr() 119 nfs_fattr_init(fattr); in nfs3_proc_getattr() 126 nfs3_proc_setattr(struct dentry *dentry, struct nfs_fattr *fattr, in nfs3_proc_setattr() argument 137 .rpc_resp = fattr, in nfs3_proc_setattr() 144 nfs_fattr_init(fattr); in nfs3_proc_setattr() 147 nfs_setattr_update_inode(inode, sattr, fattr); in nfs3_proc_setattr() [all …]
|
| H A D | proc.c | 57 struct nfs_fattr *fattr = info->fattr; in nfs_proc_get_root() local 62 .rpc_resp = fattr, in nfs_proc_get_root() 67 nfs_fattr_init(fattr); in nfs_proc_get_root() 104 struct nfs_fattr *fattr, struct inode *inode) in nfs_proc_getattr() argument 109 .rpc_resp = fattr, in nfs_proc_getattr() 119 nfs_fattr_init(fattr); in nfs_proc_getattr() 126 nfs_proc_setattr(struct dentry *dentry, struct nfs_fattr *fattr, in nfs_proc_setattr() argument 137 .rpc_resp = fattr, in nfs_proc_setattr() 147 nfs_fattr_init(fattr); in nfs_proc_setattr() 150 nfs_setattr_update_inode(inode, sattr, fattr); in nfs_proc_setattr() [all …]
|
| H A D | nfs4idmap.c | 89 void nfs_fattr_init_names(struct nfs_fattr *fattr, in nfs_fattr_init_names() argument 93 fattr->owner_name = owner_name; in nfs_fattr_init_names() 94 fattr->group_name = group_name; in nfs_fattr_init_names() 97 static void nfs_fattr_free_owner_name(struct nfs_fattr *fattr) in nfs_fattr_free_owner_name() argument 99 fattr->valid &= ~NFS_ATTR_FATTR_OWNER_NAME; in nfs_fattr_free_owner_name() 100 kfree(fattr->owner_name->data); in nfs_fattr_free_owner_name() 103 static void nfs_fattr_free_group_name(struct nfs_fattr *fattr) in nfs_fattr_free_group_name() argument 105 fattr->valid &= ~NFS_ATTR_FATTR_GROUP_NAME; in nfs_fattr_free_group_name() 106 kfree(fattr->group_name->data); in nfs_fattr_free_group_name() 109 static bool nfs_fattr_map_owner_name(struct nfs_server *server, struct nfs_fattr *fattr) in nfs_fattr_map_owner_name() argument [all …]
|
| H A D | nfs3xdr.c | 620 static int decode_fattr3(struct xdr_stream *xdr, struct nfs_fattr *fattr, in decode_fattr3() argument 632 fattr->mode = (be32_to_cpup(p++) & ~S_IFMT) | fmode; in decode_fattr3() 633 fattr->nlink = be32_to_cpup(p++); in decode_fattr3() 634 fattr->uid = make_kuid(userns, be32_to_cpup(p++)); in decode_fattr3() 635 if (!uid_valid(fattr->uid)) in decode_fattr3() 637 fattr->gid = make_kgid(userns, be32_to_cpup(p++)); in decode_fattr3() 638 if (!gid_valid(fattr->gid)) in decode_fattr3() 641 p = xdr_decode_size3(p, &fattr->size); in decode_fattr3() 642 p = xdr_decode_size3(p, &fattr->du.nfs3.used); in decode_fattr3() 643 p = xdr_decode_specdata3(p, &fattr->rdev); in decode_fattr3() [all …]
|
| H A D | nfs2xdr.c | 262 static int decode_fattr(struct xdr_stream *xdr, struct nfs_fattr *fattr, in decode_fattr() argument 272 fattr->valid |= NFS_ATTR_FATTR_V2; in decode_fattr() 276 fattr->mode = be32_to_cpup(p++); in decode_fattr() 277 fattr->nlink = be32_to_cpup(p++); in decode_fattr() 278 fattr->uid = make_kuid(userns, be32_to_cpup(p++)); in decode_fattr() 279 if (!uid_valid(fattr->uid)) in decode_fattr() 281 fattr->gid = make_kgid(userns, be32_to_cpup(p++)); in decode_fattr() 282 if (!gid_valid(fattr->gid)) in decode_fattr() 285 fattr->size = be32_to_cpup(p++); in decode_fattr() 286 fattr->du.nfs2.blocksize = be32_to_cpup(p++); in decode_fattr() [all …]
|
| H A D | nfs3acl.c | 89 res.fattr = nfs_alloc_fattr(); in nfs3_get_acl() 90 if (res.fattr == NULL) in nfs3_get_acl() 107 nfs_refresh_inode(inode, res.fattr); in nfs3_get_acl() 143 nfs_free_fattr(res.fattr); in nfs3_get_acl() 157 nfs_free_fattr(res.fattr); in nfs3_get_acl() 165 struct nfs_fattr *fattr; in __nfs3_proc_setacls() local 175 .rpc_resp = &fattr, in __nfs3_proc_setacls() 214 fattr = nfs_alloc_fattr(); in __nfs3_proc_setacls() 215 if (fattr == NULL) in __nfs3_proc_setacls() 219 msg.rpc_resp = fattr; in __nfs3_proc_setacls() [all …]
|
| H A D | getroot.c | 83 fsinfo.fattr = nfs_alloc_fattr_with_label(server); in nfs_get_root() 84 if (fsinfo.fattr == NULL) in nfs_get_root() 94 inode = nfs_fhget(s, ctx->mntfh, fsinfo.fattr); in nfs_get_root() 151 nfs_setsecurity(inode, fsinfo.fattr); in nfs_get_root() 155 nfs_free_fattr(fsinfo.fattr); in nfs_get_root()
|
| H A D | client.c | 915 …atic int nfs_probe_fsinfo(struct nfs_server *server, struct nfs_fh *mntfh, struct nfs_fattr *fattr) in nfs_probe_fsinfo() argument 927 fsinfo.fattr = fattr; in nfs_probe_fsinfo() 940 pathinfo.fattr = fattr; in nfs_probe_fsinfo() 941 nfs_fattr_init(fattr); in nfs_probe_fsinfo() 966 struct nfs_fattr *fattr; in nfs_probe_server() local 969 fattr = nfs_alloc_fattr(); in nfs_probe_server() 970 if (fattr == NULL) in nfs_probe_server() 975 error = nfs_probe_fsinfo(server, mntfh, fattr); in nfs_probe_server() 977 nfs_free_fattr(fattr); in nfs_probe_server() 1136 struct nfs_fattr *fattr; in nfs_create_server() local [all …]
|
| H A D | nfs4proc.c | 95 static void nfs_fixup_referral_attributes(struct nfs_fattr *fattr); 97 struct nfs_fattr *fattr, struct inode *inode); 99 struct nfs_fattr *fattr, struct iattr *sattr, 403 static void nfs4_fattr_set_prechange(struct nfs_fattr *fattr, u64 version) in nfs4_fattr_set_prechange() argument 405 if (!(fattr->valid & NFS_ATTR_FATTR_PRECHANGE)) { in nfs4_fattr_set_prechange() 406 fattr->pre_change_attr = version; in nfs4_fattr_set_prechange() 407 fattr->valid |= NFS_ATTR_FATTR_PRECHANGE; in nfs4_fattr_set_prechange() 3426 nfs_fattr_init(res->fattr); in _nfs4_do_setattr() 3468 struct nfs_fattr *fattr, struct iattr *sattr, in nfs4_do_setattr() argument 3482 .fattr = fattr, in nfs4_do_setattr() [all …]
|
| H A D | localio.c | 736 struct nfs_fattr *fattr = hdr->res.fattr; in nfs_local_vfs_getattr() local 739 if (unlikely(!fattr) || __vfs_getattr(&filp->f_path, &stat, version)) in nfs_local_vfs_getattr() 742 fattr->valid = (NFS_ATTR_FATTR_FILEID | in nfs_local_vfs_getattr() 750 fattr->fileid = stat.ino; in nfs_local_vfs_getattr() 751 fattr->size = stat.size; in nfs_local_vfs_getattr() 752 fattr->atime = stat.atime; in nfs_local_vfs_getattr() 753 fattr->mtime = stat.mtime; in nfs_local_vfs_getattr() 754 fattr->ctime = stat.ctime; in nfs_local_vfs_getattr() 756 fattr->change_attr = in nfs_local_vfs_getattr() 759 fattr->change_attr = nfs_timespec_to_change_attr(&fattr->ctime); in nfs_local_vfs_getattr() [all …]
|
| H A D | dir.c | 632 entry->fattr->time_start = desc->timestamp; in xdr_decode() 633 entry->fattr->gencount = desc->gencount; in xdr_decode() 654 if (entry->fattr->fileid != nfsi->fileid) in nfs_same_file() 736 if (!(entry->fattr->valid & NFS_ATTR_FATTR_FILEID)) in nfs_prime_dcache() 738 if (!(entry->fattr->valid & NFS_ATTR_FATTR_FSID)) in nfs_prime_dcache() 766 &entry->fattr->fsid)) in nfs_prime_dcache() 772 status = nfs_refresh_inode(d_inode(dentry), entry->fattr); in nfs_prime_dcache() 774 nfs_setsecurity(d_inode(dentry), entry->fattr); in nfs_prime_dcache() 793 inode = nfs_fhget(dentry->d_sb, entry->fh, entry->fattr); in nfs_prime_dcache() 814 if (entry->fattr->label) in nfs_readdir_entry_decode() [all …]
|
| H A D | nfs4xdr.c | 4762 struct nfs_fattr *fattr, struct nfs_fh *fh, in decode_getfattr_attrs() argument 4773 fattr->mode = 0; in decode_getfattr_attrs() 4775 fattr->mode |= nfs_type2fmt[type]; in decode_getfattr_attrs() 4776 fattr->valid |= status; in decode_getfattr_attrs() 4779 status = decode_attr_change(xdr, bitmap, &fattr->change_attr); in decode_getfattr_attrs() 4782 fattr->valid |= status; in decode_getfattr_attrs() 4784 status = decode_attr_size(xdr, bitmap, &fattr->size); in decode_getfattr_attrs() 4787 fattr->valid |= status; in decode_getfattr_attrs() 4789 status = decode_attr_fsid(xdr, bitmap, &fattr->fsid); in decode_getfattr_attrs() 4792 fattr->valid |= status; in decode_getfattr_attrs() [all …]
|
| H A D | namespace.c | 169 ctx->clone_data.fattr = nfs_alloc_fattr(); in nfs_d_automount() 170 if (!ctx->clone_data.fattr) in nfs_d_automount() 288 ctx->clone_data.fattr, in nfs_do_submount() 326 ctx->mntfh, ctx->clone_data.fattr); in nfs_submount()
|
| H A D | nfs4namespace.c | 421 fs_locations->fattr = nfs_alloc_fattr(); in nfs_do_refmount() 422 if (!fs_locations->fattr) in nfs_do_refmount() 443 kfree(fs_locations->fattr); in nfs_do_refmount() 462 ctx->clone_data.fattr); in nfs4_submount() 468 if (ctx->clone_data.fattr->valid & NFS_ATTR_FATTR_V4_REFERRAL) { in nfs4_submount()
|
| /linux/fs/smb/client/ |
| H A D | inode.c | 96 cifs_revalidate_cache(struct inode *inode, struct cifs_fattr *fattr) in cifs_revalidate_cache() argument 119 fattr->cf_mtime = timestamp_truncate(fattr->cf_mtime, inode); in cifs_revalidate_cache() 121 if (timespec64_equal(&mtime, &fattr->cf_mtime) && in cifs_revalidate_cache() 122 cifs_i->netfs.remote_i_size == fattr->cf_eof) { in cifs_revalidate_cache() 141 cifs_nlink_fattr_to_inode(struct inode *inode, struct cifs_fattr *fattr) in cifs_nlink_fattr_to_inode() argument 148 if (fattr->cf_flags & CIFS_FATTR_UNKNOWN_NLINK) { in cifs_nlink_fattr_to_inode() 151 if (fattr->cf_cifsattrs & ATTR_DIRECTORY) in cifs_nlink_fattr_to_inode() 160 set_nlink(inode, fattr->cf_nlink); in cifs_nlink_fattr_to_inode() 165 cifs_fattr_to_inode(struct inode *inode, struct cifs_fattr *fattr, in cifs_fattr_to_inode() argument 172 unlikely(inode_wrong_type(inode, fattr->cf_mode))) { in cifs_fattr_to_inode() [all …]
|
| H A D | readdir.c | 69 struct cifs_fattr *fattr) in cifs_prime_dcache() argument 92 switch (fattr->cf_mode & S_IFMT) { in cifs_prime_dcache() 101 } else if (fattr->cf_cifsattrs & ATTR_REPARSE_POINT) { in cifs_prime_dcache() 106 (fattr->cf_flags & CIFS_FATTR_NEED_REVAL)) in cifs_prime_dcache() 126 fattr->cf_uniqueid = CIFS_I(inode)->uniqueid; in cifs_prime_dcache() 132 if (CIFS_I(inode)->uniqueid == fattr->cf_uniqueid) { in cifs_prime_dcache() 141 if (fattr->cf_cifsattrs & ATTR_REPARSE_POINT) { in cifs_prime_dcache() 142 if (likely(reparse_inode_match(inode, fattr))) { in cifs_prime_dcache() 143 fattr->cf_mode = inode->i_mode; in cifs_prime_dcache() 144 fattr->cf_rdev = inode->i_rdev; in cifs_prime_dcache() [all …]
|
| H A D | reparse.c | 1122 u32 tag, struct cifs_fattr *fattr) in wsl_to_fattr() argument 1130 fattr->cf_mode |= S_IFLNK; in wsl_to_fattr() 1133 fattr->cf_mode |= S_IFIFO; in wsl_to_fattr() 1136 fattr->cf_mode |= S_IFSOCK; in wsl_to_fattr() 1139 fattr->cf_mode |= S_IFCHR; in wsl_to_fattr() 1142 fattr->cf_mode |= S_IFBLK; in wsl_to_fattr() 1165 fattr->cf_uid = wsl_make_kuid(cifs_sb, v); in wsl_to_fattr() 1167 fattr->cf_gid = wsl_make_kgid(cifs_sb, v); in wsl_to_fattr() 1170 if (S_DT(fattr->cf_mode) != S_DT(le32_to_cpu(*(__le32 *)v))) in wsl_to_fattr() 1172 fattr->cf_mode = (umode_t)le32_to_cpu(*(__le32 *)v); in wsl_to_fattr() [all …]
|
| H A D | link.c | 123 couldbe_mf_symlink(const struct cifs_fattr *fattr) in couldbe_mf_symlink() argument 125 if (!S_ISREG(fattr->cf_mode)) in couldbe_mf_symlink() 129 if (fattr->cf_eof != CIFS_MF_SYMLINK_FILE_SIZE) in couldbe_mf_symlink() 172 struct cifs_sb_info *cifs_sb, struct cifs_fattr *fattr, in check_mf_symlink() argument 181 if (!couldbe_mf_symlink(fattr)) in check_mf_symlink() 212 fattr->cf_eof = link_len; in check_mf_symlink() 213 fattr->cf_mode &= ~S_IFMT; in check_mf_symlink() 214 fattr->cf_mode |= S_IFLNK | S_IRWXU | S_IRWXG | S_IRWXO; in check_mf_symlink() 215 fattr->cf_dtype = DT_LNK; in check_mf_symlink() 216 fattr->cf_symlink_target = symlink; in check_mf_symlink()
|
| H A D | cifsacl.c | 341 struct cifs_fattr *fattr, uint sidtype) in sid_to_id() argument 451 fattr->cf_uid = fuid; in sid_to_id() 453 fattr->cf_gid = fgid; in sid_to_id() 764 struct cifs_fattr *fattr, bool mode_from_special_sid) in parse_dacl() argument 777 fattr->cf_mode |= 0777; in parse_dacl() 795 fattr->cf_mode &= ~(0777); in parse_dacl() 843 fattr->cf_mode &= ~07777; in parse_dacl() 844 fattr->cf_mode |= in parse_dacl() 851 &fattr->cf_mode, in parse_dacl() 857 &fattr->cf_mode, in parse_dacl() [all …]
|
| /linux/include/linux/ |
| H A D | nfs_fs.h | 447 extern int nfs_post_op_update_inode(struct inode *inode, struct nfs_fattr *fattr); 448 extern int nfs_post_op_update_inode_force_wcc(struct inode *inode, struct nfs_fattr *fattr); 449 extern int nfs_post_op_update_inode_force_wcc_locked(struct inode *inode, struct nfs_fattr *fattr); 465 extern void nfs_setsecurity(struct inode *inode, struct nfs_fattr *fattr); 476 extern void nfs_fattr_init(struct nfs_fattr *fattr); 477 extern void nfs_fattr_set_barrier(struct nfs_fattr *fattr); 493 static inline void nfs_free_fattr(const struct nfs_fattr *fattr) in nfs_free_fattr() argument 495 if (fattr) in nfs_free_fattr() 496 nfs4_label_free(fattr->label); in nfs_free_fattr() 497 kfree(fattr); in nfs_free_fattr() [all …]
|
| H A D | nfs_xdr.h | 143 struct nfs_fattr *fattr; /* Post-op attributes */ member 164 struct nfs_fattr *fattr; /* Post-op attributes */ member 182 struct nfs_fattr *fattr; /* Post-op attributes */ member 313 struct nfs_fattr *fattr; member 320 struct nfs_fattr fattr; member 556 struct nfs_fattr * fattr; member 647 struct nfs_fattr * fattr; member 692 struct nfs_fattr * fattr; member 722 struct nfs_fattr *fattr; member 780 struct nfs_fattr * fattr; member [all …]
|
| /linux/fs/nfsd/ |
| H A D | nfs4callback.c | 91 struct nfs4_cb_fattr *fattr) in decode_cb_fattr4() argument 93 fattr->ncf_cb_change = 0; in decode_cb_fattr4() 94 fattr->ncf_cb_fsize = 0; in decode_cb_fattr4() 95 fattr->ncf_cb_atime.tv_sec = 0; in decode_cb_fattr4() 96 fattr->ncf_cb_atime.tv_nsec = 0; in decode_cb_fattr4() 97 fattr->ncf_cb_mtime.tv_sec = 0; in decode_cb_fattr4() 98 fattr->ncf_cb_mtime.tv_nsec = 0; in decode_cb_fattr4() 101 if (xdr_stream_decode_u64(xdr, &fattr->ncf_cb_change) < 0) in decode_cb_fattr4() 104 if (xdr_stream_decode_u64(xdr, &fattr->ncf_cb_fsize) < 0) in decode_cb_fattr4() 111 fattr->ncf_cb_atime.tv_sec = access.seconds; in decode_cb_fattr4() [all …]
|