Created to collect together outstanding LVM2 issues affecting RHEL4.
Some were reported via email or via the Debian bug system.
Since 2.00.31 was released, I have checked the following fixes into CVS:
1. Ignore sysfs symlinks when DT_UNKNOWN.
I believe this will fix infinite loops when LVM scans sysfs on zSeries
with FCP SCSI disks. Bug reported by Stefan Bader, IBM, (private email).
2. Skip devices that are too small to be PVs.
The debugging messages added recently cause an error message to appear
in some configurations when scanning an extended partition table -
previously no message appeared. Functionality is not affected, but the
new error message is disconcerting and may lead to unnecessary support
requests. Reported on linux-lvm mailing list.
3. Fix pvchange -x segfault with lvm2-format orphan.
Trivial fix of no importance: lvm2 segfaulted instead of displaying an
4. Cope with empty msdos partition tables.
Several people have reported problems with the recent fixes which seem
to depend upon what was previously on their disks. One such case has
been identified by Chris Webb (private email) who found that lilo
creates an empty partition table which is ignored by the kernel but
not by LVM2. He supplied a patch to handle this case correctly, which
I have modified slightly and applied.
5. Fix device reference counting on re-opens.
A report on linux-lvm of pvcreate looping together with a patch for
it. I've not managed to reproduce the problem, but the patch is an
extension to the recent hasty pvcreate fix so I've applied a tidied-up
version of it.
6. Fix vgdisplay -s. Breaks (undocumented) lvs/pvs/vgs -s instead for now.
Trivial. vgdisplay was treating -s as --separator, contrary to the
documentation and breaking backwards-compatibility with LVM1.
7. Fix an error fprintf.
Trivial correction to an error message.
8. Drop static/dl restriction for now.
Attempt to correct the build options so that the extensions in the
lvm2-cluster RPM will work with it - currently you have to rebuild
9 - Include read-only pool support in the build.
10 - Ensure pvcreate wipes ext superblock (bug 140329)
11 - Remove temporary /sbin symlinks: only 'lvm.static' is needed now
(everything else comes from /usr/sbin) - but must mention clearly in
12 - Make /dev/mapper logical volume permissions/ownership the same as
for disk devices so that standard backup tools are able to back up
logical volumes. (bug 141050)
13 - Transparently correct /dev/mapper/control inside libdevmapper if
it's wrong. (bug 138487) Included in dm 1.00.20.
Item 12 included in dm 1.00.20.
Items 9 & 11 included in 2.00.32-2.0
Item 10 included in 2.00.33.
14 - Only ask kernel for open_count when it's needed, not every time,
to improve performance & reduce risk of deadlock in some
circumstances. A kernel patch is required for this change to have any
effect. Included in lvm2 2.01.00 / dm 1.01.00.
15 - 2 fixes so metadata auto-correction works properly again (esp. in
vgscan) - broken since May 2003!
Included in lvm2 2.01.00.
16 - vgcreate man page: qualified limitations lvm1-format only. (129701)
17 - userspace changes ready for supporting extending snapshot origin
volumes when the kernel has been fixed to handle this.
16 included in 2.01.01
17 included in 2.01.03
18 - Fail the command if generation of random id fails.
19 - Recognise gnbd devices.
20 - Tidy pool sptype_names to avoid unused const.
21 - Fix some size_t printing.
18-21 included in 2.01.02.
22 - Fixes to reporting of 64-bit sizes.
23 - Better handling of condition where /etc/lvm doesn't exist and can't be created.
22-23 included in 2.01.03.
18 meant that pvcreate would succeed if /dev/random was missing but not have a
properly-generated (or necessarily unique) PV UUID.
22 led to pvdisplay and pvs/vgs/lvs reporting incorrect sizes for TB devices in
several places (mostly 32-bit instead of 64-bit multiplication by physical
24 - lvm2cmd.so needs to skip the check for open fds.
25 - pvmove -f option is unused: removed it.
26 - Fixed offset added to imported pool minor numbers so avoid conflicting with
24-26 included in 2.01.04
27 - Reinstated the /sbin symlinks removed in item 11, but made it so they will
run the dynamic exectutable in /usr/sbin rather than the static one if it exists.
Included in 2.01.05