void au_cpup_attr_flags(struct inode *dst, struct inode *src) { const unsigned int mask = S_DEAD | S_SWAPFILE | S_PRIVATE | S_NOATIME | S_NOCMTIME; dst->i_flags |= src->i_flags & ~mask; if (au_test_fs_notime(dst->i_sb)) dst->i_flags |= S_NOATIME | S_NOCMTIME; }
void au_cpup_attr_flags(struct inode *dst, unsigned int iflags) { const unsigned int mask = S_DEAD | S_SWAPFILE | S_PRIVATE | S_NOATIME | S_NOCMTIME | S_AUTOMOUNT; BUILD_BUG_ON(sizeof(iflags) != sizeof(dst->i_flags)); dst->i_flags |= iflags & ~mask; if (au_test_fs_notime(dst->i_sb)) dst->i_flags |= S_NOATIME | S_NOCMTIME; }