Lines Matching defs:iattr

32 int jffs2_do_setattr (struct inode *inode, struct iattr *iattr)
94 ivalid = iattr->ia_valid;
105 from_kuid(&init_user_ns, iattr->ia_uid):i_uid_read(inode));
107 from_kgid(&init_user_ns, iattr->ia_gid):i_gid_read(inode));
110 ri->mode = cpu_to_jemode(iattr->ia_mode);
115 ri->isize = cpu_to_je32((ivalid & ATTR_SIZE)?iattr->ia_size:inode->i_size);
116 ri->atime = cpu_to_je32(I_SEC((ivalid & ATTR_ATIME)?iattr->ia_atime:inode_get_atime(inode)));
117 ri->mtime = cpu_to_je32(I_SEC((ivalid & ATTR_MTIME)?iattr->ia_mtime:inode_get_mtime(inode)));
118 ri->ctime = cpu_to_je32(I_SEC((ivalid & ATTR_CTIME)?iattr->ia_ctime:inode_get_ctime(inode)));
123 if (ivalid & ATTR_SIZE && inode->i_size < iattr->ia_size) {
126 ri->dsize = cpu_to_je32(iattr->ia_size - inode->i_size);
128 } else if (ivalid & ATTR_SIZE && !iattr->ia_size) {
160 if (ivalid & ATTR_SIZE && inode->i_size > iattr->ia_size)
161 jffs2_truncate_fragtree (c, &f->fragtree, iattr->ia_size);
163 if (ivalid & ATTR_SIZE && inode->i_size < iattr->ia_size) {
165 inode->i_size = iattr->ia_size;
183 back past iattr->ia_size, because do_truncate() holds the
185 if (ivalid & ATTR_SIZE && inode->i_size > iattr->ia_size) {
186 truncate_setsize(inode, iattr->ia_size);
194 struct iattr *iattr)
199 rc = setattr_prepare(&nop_mnt_idmap, dentry, iattr);
203 rc = jffs2_do_setattr(inode, iattr);
204 if (!rc && (iattr->ia_valid & ATTR_MODE))
374 struct iattr iattr;
385 iattr.ia_valid = ATTR_MODE|ATTR_UID|ATTR_GID|ATTR_ATIME|ATTR_MTIME|ATTR_CTIME;
386 iattr.ia_mode = inode->i_mode;
387 iattr.ia_uid = inode->i_uid;
388 iattr.ia_gid = inode->i_gid;
389 iattr.ia_atime = inode_get_atime(inode);
390 iattr.ia_mtime = inode_get_mtime(inode);
391 iattr.ia_ctime = inode_get_ctime(inode);
393 jffs2_do_setattr(inode, &iattr);