2017-07-02 22:38:32 +03:00
#!/usr/bin/env bash
2015-03-27 16:31:08 +03:00
# 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,
2016-01-21 13:49:46 +03:00
# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
2015-03-27 16:31:08 +03:00
# Check very large device size (upto 15Exa bytes)
# this needs 64bit arch
2016-02-23 01:13:42 +03:00
SKIP_WITH_LVMLOCKD = 1
2015-10-27 17:10:06 +03:00
SKIP_WITH_LVMPOLLD = 1
2015-03-27 16:31:08 +03:00
2015-10-27 17:10:06 +03:00
. lib/inittest
2015-05-09 02:59:18 +03:00
2015-03-27 16:31:08 +03:00
aux can_use_16T || skip
aux prepare_pvs 1
2017-07-06 20:41:25 +03:00
get_devs
2015-03-27 16:31:08 +03:00
# Prepare large enough backend device
2017-07-06 20:41:25 +03:00
vgcreate -s 4M " $vg " " ${ DEVICES [@] } "
2015-03-27 16:31:08 +03:00
lvcreate --type snapshot -s -l 100%FREE -n $lv $vg --virtualsize 15P
2021-08-19 00:23:48 +03:00
aux lvmconf "devices/scan_lvs = 1"
2015-03-27 16:31:08 +03:00
aux extend_filter_LVMTEST
2021-08-19 00:23:48 +03:00
aux extend_devices " $DM_DEV_DIR / $vg / $lv "
2015-03-27 16:31:08 +03:00
# Check usability with largest extent size
pvcreate " $DM_DEV_DIR / $vg / $lv "
vgcreate -s 4G $vg1 " $DM_DEV_DIR / $vg / $lv "
lvcreate -an -Zn -l50%FREE -n $lv1 $vg1
lvcreate -s -l100%FREE -n $lv2 $vg1 /$lv1
check lv_field $vg1 /$lv2 size "7.50p"
lvremove -ff $vg1
lvcreate --type snapshot -V15E -l1 -n $lv1 -s $vg1
check lv_field $vg1 /$lv1 origin_size "15.00e"
vgremove -ff $vg1
vgremove -ff $vg