Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 34327e13 authored by Nathan Scott's avatar Nathan Scott
Browse files

[XFS] Cleanup a missed porting conversion, and freezing.



SGI-PV: 953338
SGI-Modid: xfs-linux-melb:xfs-kern:26109a

Signed-off-by: default avatarNathan Scott <nathans@sgi.com>
parent 8285fb58
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -668,11 +668,11 @@ xfs_write(
	io = &xip->i_iocore;
	mp = io->io_mount;

	vfs_wait_for_freeze(vp->v_vfsp, SB_FREEZE_WRITE);

	if (XFS_FORCED_SHUTDOWN(mp))
		return -EIO;

	fs_check_frozen(vp->v_vfsp, SB_FREEZE_WRITE);

	if (ioflags & IO_ISDIRECT) {
		xfs_buftarg_t	*target =
			(xip->i_d.di_flags & XFS_DIFLAG_REALTIME) ?
+3 −4
Original line number Diff line number Diff line
@@ -190,6 +190,9 @@ extern void vfs_init_vnode(bhv_desc_t *, struct bhv_vnode *, bhv_desc_t *, int);
extern void vfs_force_shutdown(bhv_desc_t *, int, char *, int);
extern void vfs_freeze(bhv_desc_t *);

#define vfs_test_for_freeze(vfs)	((vfs)->vfs_super->s_frozen)
#define vfs_wait_for_freeze(vfs,l)	vfs_check_frozen((vfs)->vfs_super, (l))
 
typedef struct bhv_module_vfsops {
	struct bhv_vfsops	bhv_common;
	void *			bhv_custom;
@@ -211,8 +214,4 @@ extern void bhv_insert_all_vfsops(struct bhv_vfs *);
extern void bhv_remove_all_vfsops(struct bhv_vfs *, int);
extern void bhv_remove_vfsops(struct bhv_vfs *, int);

#define fs_frozen(vfsp)		((vfsp)->vfs_super->s_frozen)
#define fs_check_frozen(vfsp, level) \
	vfs_check_frozen(vfsp->vfs_super, level);

#endif	/* __XFS_VFS_H__ */
+1 −1
Original line number Diff line number Diff line
@@ -817,7 +817,7 @@ xfs_log_need_covered(xfs_mount_t *mp)
	xlog_t		*log = mp->m_log;
	bhv_vfs_t	*vfsp = XFS_MTOVFS(mp);

	if (fs_frozen(vfsp) || XFS_FORCED_SHUTDOWN(mp) ||
	if (vfs_test_for_freeze(vfsp) || XFS_FORCED_SHUTDOWN(mp) ||
	    (vfsp->vfs_flag & VFS_RDONLY))
		return 0;

+5 −12
Original line number Diff line number Diff line
@@ -236,11 +236,8 @@ xfs_trans_alloc(
	xfs_mount_t	*mp,
	uint		type)
{
	fs_check_frozen(XFS_MTOVFS(mp), SB_FREEZE_TRANS);
	atomic_inc(&mp->m_active_trans);

	return (_xfs_trans_alloc(mp, type));

	vfs_wait_for_freeze(XFS_MTOVFS(mp), SB_FREEZE_TRANS);
	return _xfs_trans_alloc(mp, type);
}

xfs_trans_t *
@@ -250,12 +247,9 @@ _xfs_trans_alloc(
{
	xfs_trans_t	*tp;

	ASSERT(xfs_trans_zone != NULL);
	tp = kmem_zone_zalloc(xfs_trans_zone, KM_SLEEP);
	atomic_inc(&mp->m_active_trans);

	/*
	 * Initialize the transaction structure.
	 */
	tp = kmem_zone_zalloc(xfs_trans_zone, KM_SLEEP);
	tp->t_magic = XFS_TRANS_MAGIC;
	tp->t_type = type;
	tp->t_mountp = mp;
@@ -263,8 +257,7 @@ _xfs_trans_alloc(
	tp->t_busy_free = XFS_LBC_NUM_SLOTS;
	XFS_LIC_INIT(&(tp->t_items));
	XFS_LBC_INIT(&(tp->t_busy));

	return (tp);
	return tp;
}

/*