-int inode_setattr_flags(struct inode *inode, unsigned int flags)
-{
- unsigned int oldflags, newflags;
-
- oldflags = inode->i_flags;
- newflags = oldflags & ~(S_IMMUTABLE | S_IUNLINK | S_BARRIER);
- if (flags & ATTR_FLAG_IMMUTABLE)
- newflags |= S_IMMUTABLE;
- if (flags & ATTR_FLAG_IUNLINK)
- newflags |= S_IUNLINK;
- if (flags & ATTR_FLAG_BARRIER)
- newflags |= S_BARRIER;
-
- if (oldflags ^ newflags)
- inode->i_flags = newflags;
- return 0;
-}
-