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->i_atime));
117 ri->mtime = cpu_to_je32(I_SEC((ivalid & ATTR_MTIME)?iattr->ia_mtime:inode->i_mtime));
118 ri->ctime = cpu_to_je32(I_SEC((ivalid & ATTR_CTIME)?iattr->ia_ctime:inode->i_ctime));
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);
193 int jffs2_setattr(struct dentry *dentry, struct iattr *iattr)
198 rc = setattr_prepare(dentry, iattr);
202 rc = jffs2_do_setattr(inode, iattr);
203 if (!rc && (iattr->ia_valid & ATTR_MODE))
373 struct iattr iattr;
384 iattr.ia_valid = ATTR_MODE|ATTR_UID|ATTR_GID|ATTR_ATIME|ATTR_MTIME|ATTR_CTIME;
385 iattr.ia_mode = inode->i_mode;
386 iattr.ia_uid = inode->i_uid;
387 iattr.ia_gid = inode->i_gid;
388 iattr.ia_atime = inode->i_atime;
389 iattr.ia_mtime = inode->i_mtime;
390 iattr.ia_ctime = inode->i_ctime;
392 jffs2_do_setattr(inode, &iattr);