Alasdair Kergon [Wed, 19 Jun 2002 13:07:05 +0000 (13:07 +0000)]
o Long-awaited ioctl interface clean-up. *** Not backwardly compatible ***
o Various other kernel side tidy-ups.
o Version number changes so we have the option of adding new ioctl commands
in future without affecting the use of existing ones should you later
revert to an older kernel but not revert the userspace library/tools.
o Better separation of kernel/userspace elements in the build process to
prepare for independent distribution of the kernel driver.
AJ Lewis [Fri, 10 May 2002 16:06:06 +0000 (16:06 +0000)]
o the _status fxns now take more arguments - this way i don't get the
preparsed status info, shove it all into a string, and then parse it
again to get the info back out (which is what i was doing before)
o basically that's it...i like this *much* better than the previous
method and i think it makes the _status fxn more flexible if we need
to use it to get other info out.
AJ Lewis [Thu, 9 May 2002 21:17:57 +0000 (21:17 +0000)]
o Actually read snapshot percentage from the kernel - what a pain! :)
o Not sure if the code in dev_manager is really optimal, but it works..
will look at adjusting it a bit now.
o I *think* it works right when one snapshot if full but others aren't,
but I haven't really been able to test it because the full snapshot
somehow resets itself and weird things start happening to the system...
AJ Lewis [Wed, 8 May 2002 16:57:46 +0000 (16:57 +0000)]
o Added function find_snapshots to snapshot_manip.c that returns a list
of snapshots whose origin is the lv passed in.
o Used this new function to make lvdisplay properly display all snapshots
attached to a origin.
Andres Salomon [Tue, 7 May 2002 05:54:14 +0000 (05:54 +0000)]
Make lvm2 compile on big endian archs; use the kernel/glibc's endian
conversion stuff, instead of implementing our own. Tested on a little
endian system (x86); I'll let the debian handle big endian testing. :)
AJ Lewis [Fri, 3 May 2002 19:28:07 +0000 (19:28 +0000)]
o Will now correctly remove expired achive files from the system when
archive_vg is called.
o Added a #define to the top of the file - not sure if this is the
appropriate place for it though
AJ Lewis [Mon, 29 Apr 2002 21:43:14 +0000 (21:43 +0000)]
o Updated *display output for LVM1 compatibility
o There is still a bit missing
+ all are missing the {PV,VG,LV} # - that is not applicable in LVM2
+ pvdisplay doesn't show how many LVs are contained on it
+ much of the snapshot information isn't available for lvdisplay
o Look at the code for other potiential FIXMEs :)
Lots of changes/very little testing so far => there'll be bugs!
Use 'vgcreate -M text' to create a volume group with its metadata stored
in text files. Text format metadata changes should be reasonably atomic,
with a (basic) automatic recovery mechanism if the system crashes while a
change is in progress.
Add a metadata section to lvm.conf to specify multiple directories if
you want (recommended) to keep multiple copies of the metadata (eg on
different filesystems).
e.g. metadata {
dirs = ["/etc/lvm/metadata1","/usr/local/lvm/metadata2"]
}
Joe Thornber [Mon, 8 Apr 2002 18:59:50 +0000 (18:59 +0000)]
o Perform a BLKFLSBUF ioctl whenever a block device is closed.
Patrick, can you see if this fixes your cluster syncing problem please ?
If so I'll make it so it only syncs if you have actually written to the
device.
Alasdair Kergon [Fri, 15 Mar 2002 16:07:38 +0000 (16:07 +0000)]
Review locking: block signals instead of ignoring them and restore state
afterwards; avoid race condition with unlink; add LCK_HOLD to process_each_vg.