anything anymore.
Signed-off-by: Darrick J. Wong <djwong@kernel.org>
Reviewed-by: Eric Sandeen <sandeen@redhat.com>
[sandeen: keep xfs_set_inode_alloc similar to kernel for now]
Signed-off-by: Eric Sandeen <sandeen@sandeen.net>
break;
case 'n':
- mp->m_flags |= LIBXFS_MOUNT_COMPAT_ATTR;
+ /*
+ * We never touch attr2 these days; leave this here to
+ * avoid breaking scripts.
+ */
break;
/* value length */
set_cur_inode(iocur_top->ino);
out:
- mp->m_flags &= ~LIBXFS_MOUNT_COMPAT_ATTR;
if (args.dp)
libxfs_irele(args.dp);
if (args.value)
break;
case 'n':
- mp->m_flags |= LIBXFS_MOUNT_COMPAT_ATTR;
+ /*
+ * We never touch attr2 these days; leave this here to
+ * avoid breaking scripts.
+ */
break;
default:
set_cur_inode(iocur_top->ino);
out:
- mp->m_flags &= ~LIBXFS_MOUNT_COMPAT_ATTR;
if (args.dp)
libxfs_irele(args.dp);
return 0;
uint m_alloc_set_aside; /* space we can't use */
uint m_ag_max_usable; /* max space per AG */
struct radix_tree_root m_perag_tree;
- uint m_flags; /* global mount flags */
uint64_t m_features; /* active filesystem features */
unsigned long m_opstate; /* dynamic state flags */
bool m_finobt_nores; /* no per-AG finobt resv. */
__XFS_UNSUPP_OPSTATE(shutdown)
#define LIBXFS_MOUNT_DEBUGGER 0x0001
-#define LIBXFS_MOUNT_32BITINODES 0x0002
-#define LIBXFS_MOUNT_32BITINOOPT 0x0004
-#define LIBXFS_MOUNT_COMPAT_ATTR 0x0008
-#define LIBXFS_MOUNT_ATTR2 0x0010
#define LIBXFS_MOUNT_WANT_CORRUPTED 0x0020
#define LIBXFS_BHASHSIZE(sbp) (1<<10)
-extern xfs_mount_t *libxfs_mount (xfs_mount_t *, xfs_sb_t *,
- dev_t, dev_t, dev_t, int);
+struct xfs_mount *libxfs_mount(struct xfs_mount *mp, struct xfs_sb *sb,
+ dev_t dev, dev_t logdev, dev_t rtdev, unsigned int flags);
int libxfs_flush_mount(struct xfs_mount *mp);
int libxfs_umount(struct xfs_mount *mp);
extern void libxfs_rtmount_destroy (xfs_mount_t *);
* to the potentially higher ag count.
*
* Returns the maximum AG index which may contain inodes.
+ *
+ * NOTE: userspace has no concept of "inode32" and so xfs_has_small_inums
+ * is always false, and much of this code is a no-op.
*/
xfs_agnumber_t
xfs_set_inode_alloc(
* sufficiently large, set XFS_MOUNT_32BITINODES if we must alter
* the allocator to accommodate the request.
*/
- if (xfs_has_small_inums(mp) && ino > XFS_MAXINUMBER_32) {
+ if (xfs_has_small_inums(mp) && ino > XFS_MAXINUMBER_32)
xfs_set_inode32(mp);
- mp->m_flags |= XFS_MOUNT_32BITINODES;
- } else {
+ else
xfs_clear_inode32(mp);
- mp->m_flags &= ~XFS_MOUNT_32BITINODES;
- }
for (index = 0; index < agcount; index++) {
struct xfs_perag *pag;
dev_t dev,
dev_t logdev,
dev_t rtdev,
- int flags)
+ unsigned int flags)
{
struct xfs_buf *bp;
struct xfs_sb *sbp;
libxfs_buftarg_init(mp, dev, logdev, rtdev);
mp->m_finobt_nores = true;
- mp->m_flags = (LIBXFS_MOUNT_32BITINODES|LIBXFS_MOUNT_32BITINOOPT);
xfs_set_inode32(mp);
mp->m_sb = *sb;
INIT_RADIX_TREE(&mp->m_perag_tree, GFP_KERNEL);
xfs_da_mount(mp);
- if (xfs_has_attr2(mp))
- mp->m_flags |= LIBXFS_MOUNT_ATTR2;
-
/* Initialize the precomputed transaction reservations values */
xfs_trans_init(mp);
#define xfs_buf_mark_corrupt(bp) __xfs_buf_mark_corrupt((bp), __this_address)
/* mount stuff */
-#define XFS_MOUNT_32BITINODES LIBXFS_MOUNT_32BITINODES
-#define XFS_MOUNT_ATTR2 LIBXFS_MOUNT_ATTR2
-#define XFS_MOUNT_SMALL_INUMS 0 /* ignored in userspace */
-#define XFS_MOUNT_WSYNC 0 /* ignored in userspace */
-#define XFS_MOUNT_NOALIGN 0 /* ignored in userspace */
-#define XFS_MOUNT_IKEEP 0 /* ignored in userspace */
-#define XFS_MOUNT_SWALLOC 0 /* ignored in userspace */
-#define XFS_MOUNT_RDONLY 0 /* ignored in userspace */
-#define XFS_MOUNT_BAD_SUMMARY 0 /* ignored in userspace */
-
#define xfs_trans_set_sync(tp) ((void) 0)
#define xfs_trans_buf_set_type(tp, bp, t) ({ \
int __t = (t); \
xlog_assign_atomic_lsn(&log->l_last_sync_lsn,
log->l_curr_cycle, after_umount_blk);
*tail_blk = after_umount_blk;
-
- /*
- * Note that the unmount was clean. If the unmount
- * was not clean, we need to know this to rebuild the
- * superblock counters from the perag headers if we
- * have a filesystem using non-persistent counters.
- */
- log->l_mp->m_flags |= XFS_MOUNT_WAS_CLEAN;
}
}