Eric Sandeen wrote:
> FWIW, it's even simpler to show the problem, it's not necessary to
> overflow the snapshot or even copy anything to them. Just create a
> couple snapshot volumes, mount them, and unmount them. Unmounting the
> first snapshot does a forced shutdown, unmounting the second
> one does a
> force shutdown and then oopses.
FWIW, I was able to oops by mounting/umounting snapshots using 2.4.16 with
LVM 1.0.2. I was able to work around the problem by changing the snapshot
to writeable (using a writeable snapshot patch)--that let the force shutdown
do whatever it wanted to do to the "read only" file system, and no I/O error
was returning. I was able to SOLVE the problem by using a different
compiler. By compiling with kgcc instead of gcc 2.96, the
mount/umount/mount/umount no longer created oops. The unmounting full LVM
snapshot problem remained the same, however.
With 2.4.17 and LVM 1.0.3 (and no other LVM/IDE/xfs patches), I can mount
and unmount a snapshot ten times in succession without oops or forced
shutdown--compiled with kgcc. I expect that with gcc I would see the
behavior you describe.