On Fri, 7 Jun 2002 19:28, Simon Matter wrote:
> > As you say, this is a fairly expensive option :) But unfortunately, LVM1
> > is deadlocking with xfs_freeze - anyone has any EVMS experience?
>
> Now, do you really need xfs_freeze? You need it for snapshotting but not
> for online growing of volumes. If you just want to add physical units to
> the volume and then grow the XFS filesystem on it, you can do it while
> the volume is mounted and without xfs_freeze!
This is correct - if all your wanting to do is grow volumes xfs_freeze is not
needed. In fact xfs_freeze is not needed for snapshots either as long as
you have a working implementation of the LVM VFS-lock patch.
I have had success with XFS & snapshotting - but I do find it hit & miss at
times. Everything from the compiler version, CVS date to whether there was a
full moon the night I compiled the kernel. My advice: test, test & test
again.
An example is that when compiling LVM1 with the VFS-lock patch & XFS with the
buggy RedHat 7.2 gcc, everything worked fine. If I used xfs_freeze then
things would deadlock. When using kgcc it would not matter if I was using
the VFS-lock or xfs_freeze it would either Oops or deadlock.
I have a couple of very stable kernels with respect to LVM snapshots and XFS
but I have some deadly ones as well. After spending quite some time playing
around, discussing issues with the XFS developers, the LVM developers and
others - a couple of issues were put down to the 2.4.18 VM. Some people have
reported better success when not using the standard Linux tree. The reason I
have concluded is that XFS seems to be very VM intensive (maybe because of
the delayed writes) and exercises the devils that the other filesystems never
touch.
If you really need snapshots and you havn't found the VFS-lock route or the
xfs_freeze route to work for you there are other ways that people have
approached snapshots. There is a patch for writable snapshots for LVM 1.0.?
that allows a snapshot to be made without either the VFS-lock patch or
xfs_freeze. This allows you to take an inconsistant snapshot and have the
snaphot fscked during mount - this method is deadlock free; however, it may
not be suitable for what you are trying to achieve. What I have also done is
late at night kill any process that is reading/writing to the volume
(samba/NFS) then umount the volume and then do a snapshot; then mount and
restart processes. In my situation it is done at 04:00 in the morning and it
doesn't affect anyone - but again it may not be suitable for what you are
trying to achieve.
As for EVMS, I tried it many months ago, and for memory it had simular issues
to LVM with respect to snapshots at the time. Unfortunately, I didn't take
it any further, deciding to run with the devil I knew, rather than learn
another. So I cannot give any comments on the current state of EVMS.
I hope this helps someone.
--
Adrian Head
(Public Key available on request.)
|