Function report |
Source Code:fs\attr.c |
Create Date:2022-07-28 20:08:14 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
home page | Tree |
Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:y_change - modify attributes of a filesytem object*@dentry: object affected*@attr: new attributes*@delegated_inode: returns inode, if the inode is delegated* The caller must hold the i_mutex on the affected object
Proto:int notify_change(struct dentry *dentry, struct iattr *attr, struct inode **delegated_inode)
Type:int
Parameter:
Type | Parameter | Name |
---|---|---|
struct dentry * | dentry | |
struct iattr * | attr | |
struct inode ** | delegated_inode |
231 | WARN_ON_ONCE(!inode_is_locked(inode)) |
234 | If IS_IMMUTABLE(inode) || IS_APPEND(inode) Then Return -EPERM |
242 | If ia_valid & ATTR_TOUCH Then |
243 | If IS_IMMUTABLE(inode) Then Return -EPERM |
263 | If Not (ia_valid & ATTR_ATIME_SET) Then ia_atime = now |
267 | If Not (ia_valid & ATTR_MTIME_SET) Then ia_mtime = now |
272 | If ia_valid & ATTR_KILL_PRIV Then |
276 | If error == 0 Then ia_valid = ia_valid &= ~ATTR_KILL_PRIV |
287 | If ia_valid & (ATTR_KILL_SUID | ATTR_KILL_SGID) && ia_valid & Attribute flags. These should be or-ed together to figure out what* has been changed! Then BUG() |
291 | If ia_valid & ATTR_KILL_SUID Then |
297 | If ia_valid & ATTR_KILL_SGID Then |
306 | If Not (ia_valid & ~(ATTR_KILL_SUID | ATTR_KILL_SGID)) Then Return 0 |
328 | error = security_inode_setattr(dentry, attr) |
331 | error = try_break_deleg(inode, delegated_inode) |
337 | Else error = simple_setattr - setattr for simple filesystem*@dentry: dentry*@iattr: iattr structure* Returns 0 on success, -error on failure |
340 | If Not error Then |
346 | Return error |
Name | Describe |
---|---|
chmod_common | |
chown_common | |
__remove_privs | |
utimes_common |
Source code conversion tool public plug-in interface | X |
---|---|
Support c/c++/esqlc/java Oracle/Informix/Mysql Plug-in can realize: logical Report Code generation and batch code conversion |