TODO list for future LVM versions                                    13/02/1999


Numbers don't imply priority!

1. Enhance lvdisplay to calculate the maximum possible extension
   for a logical volume (free PEs in VG, allocation policy).

2. Add PV and VG UUID fields to VGDA structures to have unique identificaton
   of physical volumes and volume groups (see uuids in e2fsprogs).
   (This would change pv_namelist_on_disk to pv_uuidlist_on_disk in the VGDA)

3. Support VGDA changes by vgchange(8) to use free space between VGDA space
   on disk and first PE to extend/reduce number of LVs or PVs.

4. Support root, usr etc. as LVs.
   First step can be using initrd booted from a small (about 40MB should be
   sufficient) stand/boot partition including LVM commands/driver, activating
   neccessary VGs containing root, usr etc.
   Encapsulatin of stand/boot partition should then be obsolete avoiding
   LILO rewrites. LILO has to be changed to take full advantage of a
   posibly scattered BOOT-LV.

5. Implement RAID1/3/5/10/30/50 in the LVM (RAID0 is already implemented).
   Start by <pam@ramoth.xs4all.nl>.

6. Change minor number scheme from bit masked to hash table indexed for
   better use of 8 bit minors.
   Avoid special minors for VG addressing (LV hash can hold VG index too).

7. Support merge of volume groups with different physical extent sizes.

8. Check future of mass I/O device specials to only use block device ones.
   Maybe unbuffered i/o works with special open flag
   on block special instead of unbuffered character disk specials.

9. Snapshot LVM for backups.

10. Write mini-howto for filesystem integrators.

11. Implement a daemon which automagically moves i/o intensive physical
    extends to physical volumes with low i/o using available statistic data.

