[linux-lvm] [PATCH LVM2 0/2] fix alloc anywhere and addition of disklog

Jun'ichi Nomura j-nomura at ce.jp.nec.com
Fri Sep 22 22:27:19 UTC 2006


Hi,

Following patches will fix 2 problems:
  - 'lvcreate --alloc anywhere' cannot allocates log
    on the same PV with mimage. This prevents us to create a mirror LV
    on a VG with 2 PVs.
  - 'lvconvert' from corelog allocates log from the same PV
    with other image. It spoils redundancy.
(See attached metadata for examples)

This patch does the following changes:
  (1/2) fix-mirror-alloc-anywhere.patch
          - split log specific parts from _find_parallel_space() and
            _alloc_parallel_area()
          - determine log PV before doing other allocation
          - use constraints correctly
             * log allocation should avoid all PVs used by other parts of the LV
             * other allocation should avoid log PV and parallel PVs of
               corresponding lv segment (unchanged)
  (2/2) fix-lvconvert-allocate-disklog.patch
          - lvconvert to setup constraints properly

The 2nd patch itself is trivial and depends on the 1st patch for
the allocation logic to work correctly.

The patch has no effects on non-mirror allocation.
The patch was tested on the combinations of following scenarios:
  - normal or anywhere allocation policy
  - creation, corelog to disklog conversion, or linear to mirror conversion
  - VG with 2 PVs or more than 2 PVs

Thanks,
-- 
Jun'ichi Nomura, NEC Corporation of America
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: testvg0-lvconvert-corelog.vg
URL: <http://listman.redhat.com/archives/linux-lvm/attachments/20060922/5af63694/attachment.ksh>
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: testvg0-lvcreate-anywhere.vg
URL: <http://listman.redhat.com/archives/linux-lvm/attachments/20060922/5af63694/attachment-0001.ksh>


More information about the linux-lvm mailing list