Skip to content

Commit fc86e5c

Browse files
committed
Merge tag 'xfs-6.8-fixes-2' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux
Pull xfs fixes from Chandan Babu: - Clear XFS_ATTR_INCOMPLETE filter on removing xattr from a node format attribute fork - Remove conditional compilation of realtime geometry validator functions to prevent confusing error messages from being printed on the console during the mount operation * tag 'xfs-6.8-fixes-2' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux: xfs: remove conditional building of rt geometry validator functions xfs: reset XFS_ATTR_INCOMPLETE filter on node removal
2 parents 3a0e922 + 881f78f commit fc86e5c

File tree

8 files changed

+33
-33
lines changed

8 files changed

+33
-33
lines changed

fs/xfs/libxfs/xfs_attr.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -421,10 +421,10 @@ xfs_attr_complete_op(
421421
bool do_replace = args->op_flags & XFS_DA_OP_REPLACE;
422422

423423
args->op_flags &= ~XFS_DA_OP_REPLACE;
424-
if (do_replace) {
425-
args->attr_filter &= ~XFS_ATTR_INCOMPLETE;
424+
args->attr_filter &= ~XFS_ATTR_INCOMPLETE;
425+
if (do_replace)
426426
return replace_state;
427-
}
427+
428428
return XFS_DAS_DONE;
429429
}
430430

fs/xfs/libxfs/xfs_rtbitmap.c

Lines changed: 0 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1118,20 +1118,6 @@ xfs_rtbitmap_blockcount(
11181118
return howmany_64(rtextents, NBBY * mp->m_sb.sb_blocksize);
11191119
}
11201120

1121-
/*
1122-
* Compute the maximum level number of the realtime summary file, as defined by
1123-
* mkfs. The historic use of highbit32 on a 64-bit quantity prohibited correct
1124-
* use of rt volumes with more than 2^32 extents.
1125-
*/
1126-
uint8_t
1127-
xfs_compute_rextslog(
1128-
xfs_rtbxlen_t rtextents)
1129-
{
1130-
if (!rtextents)
1131-
return 0;
1132-
return xfs_highbit64(rtextents);
1133-
}
1134-
11351121
/*
11361122
* Compute the number of rtbitmap words needed to populate every block of a
11371123
* bitmap that is large enough to track the given number of rt extents.

fs/xfs/libxfs/xfs_rtbitmap.h

Lines changed: 0 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -351,20 +351,6 @@ xfs_rtfree_extent(
351351
int xfs_rtfree_blocks(struct xfs_trans *tp, xfs_fsblock_t rtbno,
352352
xfs_filblks_t rtlen);
353353

354-
uint8_t xfs_compute_rextslog(xfs_rtbxlen_t rtextents);
355-
356-
/* Do we support an rt volume having this number of rtextents? */
357-
static inline bool
358-
xfs_validate_rtextents(
359-
xfs_rtbxlen_t rtextents)
360-
{
361-
/* No runt rt volumes */
362-
if (rtextents == 0)
363-
return false;
364-
365-
return true;
366-
}
367-
368354
xfs_filblks_t xfs_rtbitmap_blockcount(struct xfs_mount *mp, xfs_rtbxlen_t
369355
rtextents);
370356
unsigned long long xfs_rtbitmap_wordcount(struct xfs_mount *mp,
@@ -383,8 +369,6 @@ unsigned long long xfs_rtsummary_wordcount(struct xfs_mount *mp,
383369
# define xfs_rtsummary_read_buf(a,b) (-ENOSYS)
384370
# define xfs_rtbuf_cache_relse(a) (0)
385371
# define xfs_rtalloc_extent_is_free(m,t,s,l,i) (-ENOSYS)
386-
# define xfs_compute_rextslog(rtx) (0)
387-
# define xfs_validate_rtextents(rtx) (false)
388372
static inline xfs_filblks_t
389373
xfs_rtbitmap_blockcount(struct xfs_mount *mp, xfs_rtbxlen_t rtextents)
390374
{

fs/xfs/libxfs/xfs_sb.c

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1377,3 +1377,17 @@ xfs_validate_stripe_geometry(
13771377
}
13781378
return true;
13791379
}
1380+
1381+
/*
1382+
* Compute the maximum level number of the realtime summary file, as defined by
1383+
* mkfs. The historic use of highbit32 on a 64-bit quantity prohibited correct
1384+
* use of rt volumes with more than 2^32 extents.
1385+
*/
1386+
uint8_t
1387+
xfs_compute_rextslog(
1388+
xfs_rtbxlen_t rtextents)
1389+
{
1390+
if (!rtextents)
1391+
return 0;
1392+
return xfs_highbit64(rtextents);
1393+
}

fs/xfs/libxfs/xfs_sb.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,4 +38,6 @@ extern int xfs_sb_get_secondary(struct xfs_mount *mp,
3838
extern bool xfs_validate_stripe_geometry(struct xfs_mount *mp,
3939
__s64 sunit, __s64 swidth, int sectorsize, bool silent);
4040

41+
uint8_t xfs_compute_rextslog(xfs_rtbxlen_t rtextents);
42+
4143
#endif /* __XFS_SB_H__ */

fs/xfs/libxfs/xfs_types.h

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -251,4 +251,16 @@ bool xfs_verify_fileoff(struct xfs_mount *mp, xfs_fileoff_t off);
251251
bool xfs_verify_fileext(struct xfs_mount *mp, xfs_fileoff_t off,
252252
xfs_fileoff_t len);
253253

254+
/* Do we support an rt volume having this number of rtextents? */
255+
static inline bool
256+
xfs_validate_rtextents(
257+
xfs_rtbxlen_t rtextents)
258+
{
259+
/* No runt rt volumes */
260+
if (rtextents == 0)
261+
return false;
262+
263+
return true;
264+
}
265+
254266
#endif /* __XFS_TYPES_H__ */

fs/xfs/scrub/rtbitmap.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
#include "xfs_inode.h"
1616
#include "xfs_bmap.h"
1717
#include "xfs_bit.h"
18+
#include "xfs_sb.h"
1819
#include "scrub/scrub.h"
1920
#include "scrub/common.h"
2021
#include "scrub/repair.h"

fs/xfs/scrub/rtsummary.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
#include "xfs_rtbitmap.h"
1717
#include "xfs_bit.h"
1818
#include "xfs_bmap.h"
19+
#include "xfs_sb.h"
1920
#include "scrub/scrub.h"
2021
#include "scrub/common.h"
2122
#include "scrub/trace.h"

0 commit comments

Comments
 (0)