if (((sbi->s_mount_opt & EXT2_MOUNT_XIP) != (old_mount_opt & EXT2_MOUNT_XIP)) && invalidate_inodes(sb)) ext2_warning(sb, __FUNCTION__, "busy inodes while remounting "\ "xip remain in cache (no functional problem)");
static int ext2_remount (struct super_block * sb, int * flags, char * data){	struct ext2_sb_info * sbi = EXT2_SB(sb);	struct ext2_super_block * es;	/*	 * Allow the "check" option to be passed as a remount option.	 */	if (!parse_options (data, sbi))		return -EINVAL;	sb->s_flags = (sb->s_flags & ~MS_POSIXACL) |		((sbi->s_mount_opt & EXT2_MOUNT_POSIX_ACL) ? MS_POSIXACL : 0);	es = sbi->s_es;	if ((*flags & MS_RDONLY) == (sb->s_flags & MS_RDONLY))		return 0;	if (*flags & MS_RDONLY) {		if (le16_to_cpu(es->s_state) & EXT2_VALID_FS ||		    !(sbi->s_mount_state & EXT2_VALID_FS))			return 0;		/*		 * OK, we are remounting a valid rw partition rdonly, so set		 * the rdonly flag and then mark the partition as valid again.		 */		es->s_state = cpu_to_le16(sbi->s_mount_state);		es->s_mtime = cpu_to_le32(get_seconds());	} else {		__le32 ret = EXT2_HAS_RO_COMPAT_FEATURE(sb,					       ~EXT2_FEATURE_RO_COMPAT_SUPP);		if (ret) {			printk("EXT2-fs: %s: couldn't remount RDWR because of "			       "unsupported optional features (%x).\n",			       sb->s_id, le32_to_cpu(ret));			return -EROFS;		}		/*		 * Mounting a RDONLY partition read-write, so reread and		 * store the current valid flag.  (It may have been changed		 * by e2fsck since we originally mounted the partition.)		 */		sbi->s_mount_state = le16_to_cpu(es->s_state);		if (!ext2_setup_super (sb, es, 0))			sb->s_flags &= ~MS_RDONLY;	}	ext2_sync_super(sb, es);	return 0;}