#!/bin/sh # Copyright (C) 2015 Red Hat, Inc. All rights reserved. # # This copyrighted material is made available to anyone wishing to use, # modify, copy, or redistribute it subject to the terms and conditions # of the GNU General Public License v.2. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software Foundation, # Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA SKIP_WITH_LVMLOCKD=1 SKIP_WITH_LVMPOLLD=1 export LVM_TEST_THIN_REPAIR_CMD=${LVM_TEST_THIN_REPAIR_CMD-/bin/false} . lib/inittest aux have_thin 1 0 0 || skip aux prepare_pvs 1 16 ######################### # special cases to test # ######################### # if calling lvremove and an LV is removed that is related to other LV # and we're doing selection based on this relation, check if we're # selecting on initial state (here, thin origin LV thin_orig is removed # first, but thin snap should be still selectable based on origin=thin_orig # condition even though thin_orig has just been removed) vgcreate -s 4m $vg1 "$dev1" lvcreate -l100%FREE -T $vg1/pool lvcreate -V4m -T $vg1/pool -n thin_orig lvcreate -s $vg1/thin_orig -n thin_snap lvremove -ff -S 'lv_name=thin_orig || origin=thin_orig' > out grep "Logical volume \"thin_orig\" successfully removed" out grep "Logical volume \"thin_snap\" successfully removed" out not lvs $vg1/thin_orig not lvs $vg1/thin_snap vgremove -ff $vg1