Lines Matching refs:inode

37 void ubifs_set_inode_flags(struct inode *inode)  in ubifs_set_inode_flags()  argument
39 unsigned int flags = ubifs_inode(inode)->flags; in ubifs_set_inode_flags()
41 inode->i_flags &= ~(S_SYNC | S_APPEND | S_IMMUTABLE | S_DIRSYNC); in ubifs_set_inode_flags()
43 inode->i_flags |= S_SYNC; in ubifs_set_inode_flags()
45 inode->i_flags |= S_APPEND; in ubifs_set_inode_flags()
47 inode->i_flags |= S_IMMUTABLE; in ubifs_set_inode_flags()
49 inode->i_flags |= S_DIRSYNC; in ubifs_set_inode_flags()
102 static int setflags(struct inode *inode, int flags) in setflags() argument
105 struct ubifs_inode *ui = ubifs_inode(inode); in setflags()
106 struct ubifs_info *c = inode->i_sb->s_fs_info; in setflags()
128 ubifs_set_inode_flags(inode); in setflags()
129 inode->i_ctime = ubifs_current_time(inode); in setflags()
131 mark_inode_dirty_sync(inode); in setflags()
136 if (IS_SYNC(inode)) in setflags()
137 err = write_inode_now(inode, 1); in setflags()
141 ubifs_err(c, "can't modify inode %lu attributes", inode->i_ino); in setflags()
150 struct inode *inode = file_inode(file); in ubifs_ioctl() local
154 flags = ubifs2ioctl(ubifs_inode(inode)->flags); in ubifs_ioctl()
156 dbg_gen("get flags: %#x, i_flags %#x", flags, inode->i_flags); in ubifs_ioctl()
160 if (IS_RDONLY(inode)) in ubifs_ioctl()
163 if (!inode_owner_or_capable(inode)) in ubifs_ioctl()
169 if (!S_ISDIR(inode->i_mode)) in ubifs_ioctl()
179 dbg_gen("set flags: %#x, i_flags %#x", flags, inode->i_flags); in ubifs_ioctl()
180 err = setflags(inode, flags); in ubifs_ioctl()