]> git.ipfire.org Git - thirdparty/xfsprogs-dev.git/commitdiff
xfs_repair: don't flag RTINHERIT files when no rt volume
authorDarrick J. Wong <darrick.wong@oracle.com>
Wed, 30 Sep 2020 14:59:15 +0000 (10:59 -0400)
committerEric Sandeen <sandeen@sandeen.net>
Wed, 30 Sep 2020 14:59:15 +0000 (10:59 -0400)
Don't flag directories with the RTINHERIT flag set when the filesystem
doesn't have a realtime volume configured.  The kernel has let us set
RTINHERIT without a rt volume for ages, so it's not an invalid state.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Eric Sandeen <sandeen@sandeen.net>
repair/dinode.c

index 36b4ffe3cd793364ae193a8beb525027d9c51a1e..f65a614702fd91bbba50b796e4f24109387aaa8b 100644 (file)
@@ -2395,17 +2395,14 @@ _("bad (negative) size %" PRId64 " on inode %" PRIu64 "\n"),
                        flags &= XFS_DIFLAG_ANY;
                }
 
-               if (flags & (XFS_DIFLAG_REALTIME | XFS_DIFLAG_RTINHERIT)) {
-                       /* need an rt-dev! */
-                       if (!rt_name) {
-                               if (!uncertain) {
-                                       do_warn(
+               /* need an rt-dev for the realtime flag! */
+               if ((flags & XFS_DIFLAG_REALTIME) && !rt_name) {
+                       if (!uncertain) {
+                               do_warn(
        _("inode %" PRIu64 " has RT flag set but there is no RT device\n"),
-                                               lino);
-                               }
-                               flags &= ~(XFS_DIFLAG_REALTIME |
-                                               XFS_DIFLAG_RTINHERIT);
+                                       lino);
                        }
+                       flags &= ~XFS_DIFLAG_REALTIME;
                }
                if (flags & XFS_DIFLAG_NEWRTBM) {
                        /* must be a rt bitmap inode */