mirror of
git://sourceware.org/git/lvm2.git
synced 2024-12-21 13:34:40 +03:00
LVM2 mirror repository
https://sourceware.org/lvm2/
e52c998c49
When lvmetad is used and at the same time we're getting list of all PV-capable devices, we can't use cmd->filter (which is used to filter out lvmetad responses - so we're sure that the devices are PVs already). To get the list of PV-capable devices, we're bypassing lvmetad (since lvmetad only caches PVs, not all the other devices which are not PVs). For this reason, we have to use the "full_filter" filter chain (just like we do when we're running without lvmetad). Example scenario: - sdo and sdp components of MD device md0 - sdq, sdr and sds components of mpatha multipath device - mpatha multipath device partitioned - vda device partitioned => sdo,sdp,sdr,sds, mpatha and vda should be filtered! $ lsblk -o NAME,TYPE NAME TYPE sdn disk sdo disk `-md0 raid0 sdp disk `-md0 raid0 sdq disk `-mpatha mpath `-mpatha1 part sdr disk `-mpatha mpath `-mpatha1 part sds disk `-mpatha mpath `-mpatha1 part vda disk |-vda1 part `-vda2 part |-fedora-swap lvm `-fedora-root lvm Before this patch: ================== use_lvmetad=0 (correct behaviour!) $ pvs -a PV VG Fmt Attr PSize PFree /dev/fedora/root --- 0 0 /dev/fedora/swap --- 0 0 /dev/mapper/mpatha1 --- 0 0 /dev/md0 --- 0 0 /dev/sdn --- 0 0 /dev/vda1 --- 0 0 /dev/vda2 fedora lvm2 a-- 9.51g 0 use_lvmetad=1 (incorrect behaviour - sdo,sdp,sdq,sdr,sds and mpatha not filtered!) $ pvs -a PV VG Fmt Attr PSize PFree /dev/fedora/root --- 0 0 /dev/fedora/swap --- 0 0 /dev/mapper/mpatha --- 0 0 /dev/mapper/mpatha1 --- 0 0 /dev/md0 --- 0 0 /dev/sdn --- 0 0 /dev/sdo --- 0 0 /dev/sdp --- 0 0 /dev/sdq --- 0 0 /dev/sdr --- 0 0 /dev/sds --- 0 0 /dev/vda --- 0 0 /dev/vda1 --- 0 0 /dev/vda2 fedora lvm2 a-- 9.51g 0 With this patch applied: ======================== use_lvmetad=1 $ pvs -a PV VG Fmt Attr PSize PFree /dev/fedora/root --- 0 0 /dev/fedora/swap --- 0 0 /dev/mapper/mpatha1 --- 0 0 /dev/md0 --- 0 0 /dev/sdn --- 0 0 /dev/vda1 --- 0 0 /dev/vda2 fedora lvm2 a-- 9.51g 0 |
||
---|---|---|
autoconf | ||
conf | ||
daemons | ||
doc | ||
include | ||
lib | ||
libdaemon | ||
libdm | ||
liblvm | ||
man | ||
nix | ||
old-tests | ||
po | ||
python | ||
report-generators | ||
reports | ||
scripts | ||
spec | ||
test | ||
tools | ||
udev | ||
unit-tests | ||
.gitignore | ||
acinclude.m4 | ||
aclocal.m4 | ||
configure | ||
configure.in | ||
COPYING | ||
COPYING.LIB | ||
INSTALL | ||
make.tmpl.in | ||
Makefile.in | ||
README | ||
VERSION | ||
VERSION_DM | ||
WHATS_NEW | ||
WHATS_NEW_DM |
This tree contains the LVM2 and device-mapper tools and libraries. For more information about LVM2 read the changelog in the WHATS_NEW file. Installation instructions are in INSTALL. There is no warranty - see COPYING and COPYING.LIB. Tarballs are available from: ftp://sources.redhat.com/pub/lvm2/ The source code is stored in git: http://git.fedorahosted.org/git/lvm2.git git clone git://git.fedorahosted.org/git/lvm2.git Mailing list for general discussion related to LVM2: linux-lvm@redhat.com Subscribe from https://www.redhat.com/mailman/listinfo/linux-lvm Mailing lists for LVM2 development, patches and commits: lvm-devel@redhat.com Subscribe from https://www.redhat.com/mailman/listinfo/linux-lvm lvm2-commits@lists.fedorahosted.org (Read-only archive of commits) Subscribe from https://fedorahosted.org/mailman/listinfo/lvm2-commits Mailing list for device-mapper development, including kernel patches and multipath-tools: dm-devel@redhat.com Subscribe from https://www.redhat.com/mailman/listinfo/dm-devel The source code repository used until 7th June 2012 is accessible here: http://sources.redhat.com/cgi-bin/cvsweb.cgi/LVM2/?cvsroot=lvm2.