Increase LVM implementation robustness in order not to crash on
configurations like pvmove. Previously code assumed that in some places only lvs or only pvs are used whereas it seems that they are used interchangeably. * grub-core/disk/lvm.c (read_node): New function. (read_lv): Use read_node. (grub_lvm_scan_device): Use only first mirror on pvmove'd lvs. Match volumes only at the end when all lvs are found. Take both pvs (first) and lvs (second) into account. * include/grub/lvm.h (grub_lvm_segment): Merge fields stripe_* and mirror_* into node_*. All users updated. (grub_lvm_stripe): Merge this ... (grub_lvm_mirror): ... and this ... (grub_lvm_node): ... into this. All users updated.
This commit is contained in:
parent
6f33215394
commit
850e937329
3 changed files with 103 additions and 74 deletions
18
ChangeLog
18
ChangeLog
|
@ -1,3 +1,21 @@
|
|||
2011-04-02 Vladimir Serbinenko <phcoder@gmail.com>
|
||||
|
||||
Increase LVM implementation robustness in order not to crash on
|
||||
configurations like pvmove. Previously code assumed that in some places
|
||||
only lvs or only pvs are used whereas it seems that they are used
|
||||
interchangeably.
|
||||
|
||||
* grub-core/disk/lvm.c (read_node): New function.
|
||||
(read_lv): Use read_node.
|
||||
(grub_lvm_scan_device): Use only first mirror on pvmove'd lvs.
|
||||
Match volumes only at the end when all lvs are found. Take both
|
||||
pvs (first) and lvs (second) into account.
|
||||
* include/grub/lvm.h (grub_lvm_segment): Merge fields stripe_* and
|
||||
mirror_* into node_*. All users updated.
|
||||
(grub_lvm_stripe): Merge this ...
|
||||
(grub_lvm_mirror): ... and this ...
|
||||
(grub_lvm_node): ... into this. All users updated.
|
||||
|
||||
2011-04-02 Vladimir Serbinenko <phcoder@gmail.com>
|
||||
|
||||
* grub-core/disk/lvm.c (grub_lvm_scan_device): Print errors on the end
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue