xfs
[Top] [All Lists]

Re: How long should an xfs_freeze take?

To: Chris Pascoe <c.pascoe@xxxxxxxxxxxxxx>
Subject: Re: How long should an xfs_freeze take?
From: Eric Sandeen <sandeen@xxxxxxx>
Date: 01 Feb 2002 15:38:53 -0600
Cc: linux-xfs@xxxxxxxxxxx
In-reply-to: <023501c1a953$f059a0f0$47426682@xxxxxxxxxxxxxx>
References: <023501c1a953$f059a0f0$47426682@xxxxxxxxxxxxxx>
Sender: owner-linux-xfs@xxxxxxxxxxx
Hi Chris -

Want to try this?


--- /usr/tmp/TmpDir.12545-0/linux/fs/xfs/xfs_fsops.c_1.72       Fri Feb  1 
15:33:39 2002
+++ linux/fs/xfs/xfs_fsops.c    Fri Feb  1 15:33:51 2002
@@ -563,9 +563,6 @@
        /* Flush delalloc and delwri data */
        VFS_SYNC(vfsp, SYNC_DELWRI|SYNC_WAIT, sys_cred, error);
 
-       /* Flush inactive inodes */
-       xfs_iflush_all(mp, XFS_FLUSH_ALL);
-
        /* Pause transaction subsystem */
        xfs_start_freeze(mp, XFS_FREEZE_TRANS);


It certainly speeds up freeze.  And it looks like it still does what
it's supposed to do.  :)

The theory (I think) is that xfs_iflush_all was racing around like mad,
waiting for inodes to un-busy, but it was working so hard that the
things trying to un-busy the inodes couldn't get in... lather, rinse,
repeat.

Incidentally, I think that after your 7 hour freeze, things were not in
good shape.  If I froze, unfroze, then tried to do a "find" through the
filesystem, it would blow up - apparently xfs_iflush_all was
disconnecting xfs inodes from the linux inodes, and we wound up with
null pointer dereferences & oopses.

-Eric

On Wed, 2002-01-30 at 00:03, Chris Pascoe wrote:
> Hi,
> 
> I'm guessing an xfs_freeze shouldn't take this long, am I correct?
> 
> # time xfs_freeze -f /tst1
> 
> real    344m40.434s
> user    0m0.000s
> sys     340m40.810s


-- 
Eric Sandeen      XFS for Linux     http://oss.sgi.com/projects/xfs
sandeen@xxxxxxx   SGI, Inc.


<Prev in Thread] Current Thread [Next in Thread>