1*86d7f5d3SJohn Marino#!/bin/sh 2*86d7f5d3SJohn Marino# Copyright (C) 2008 Red Hat, Inc. All rights reserved. 3*86d7f5d3SJohn Marino# 4*86d7f5d3SJohn Marino# This copyrighted material is made available to anyone wishing to use, 5*86d7f5d3SJohn Marino# modify, copy, or redistribute it subject to the terms and conditions 6*86d7f5d3SJohn Marino# of the GNU General Public License v.2. 7*86d7f5d3SJohn Marino# 8*86d7f5d3SJohn Marino# You should have received a copy of the GNU General Public License 9*86d7f5d3SJohn Marino# along with this program; if not, write to the Free Software Foundation, 10*86d7f5d3SJohn Marino# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 11*86d7f5d3SJohn Marino 12*86d7f5d3SJohn Marinotest_description='Exercise some vgchange diagnostics' 13*86d7f5d3SJohn Marino 14*86d7f5d3SJohn Marino. ./test-utils.sh 15*86d7f5d3SJohn Marino 16*86d7f5d3SJohn Marinoaux prepare_pvs 3 17*86d7f5d3SJohn Marinopvcreate --metadatacopies 0 $dev1 18*86d7f5d3SJohn Marinovgcreate $vg $devs 19*86d7f5d3SJohn Marino 20*86d7f5d3SJohn Marinoget_vg_field() { 21*86d7f5d3SJohn Marino local vg=$1 22*86d7f5d3SJohn Marino local field=$2 23*86d7f5d3SJohn Marino local value 24*86d7f5d3SJohn Marino vgs --noheading -o $field $vg | sed 's/^ *//' 25*86d7f5d3SJohn Marino} 26*86d7f5d3SJohn Marino 27*86d7f5d3SJohn Marinovgdisplay $vg 28*86d7f5d3SJohn Marino 29*86d7f5d3SJohn Marino# vgchange -p MaxPhysicalVolumes (bz202232) 30*86d7f5d3SJohn Marinoaux check_vg_field_ $vg max_pv 0 31*86d7f5d3SJohn Marinovgchange -p 128 $vg 32*86d7f5d3SJohn Marinoaux check_vg_field_ $vg max_pv 128 33*86d7f5d3SJohn Marino 34*86d7f5d3SJohn Marinopv_count=$(get_vg_field $vg pv_count) 35*86d7f5d3SJohn Marinonot vgchange -p 2 $vg 2>err 36*86d7f5d3SJohn Marinogrep "MaxPhysicalVolumes is less than the current number $pv_count of PVs for" err 37*86d7f5d3SJohn Marinoaux check_vg_field_ $vg max_pv 128 38*86d7f5d3SJohn Marino 39*86d7f5d3SJohn Marino# vgchange -l MaxLogicalVolumes 40*86d7f5d3SJohn Marinoaux check_vg_field_ $vg max_lv 0 41*86d7f5d3SJohn Marinovgchange -l 128 $vg 42*86d7f5d3SJohn Marinoaux check_vg_field_ $vg max_lv 128 43*86d7f5d3SJohn Marino 44*86d7f5d3SJohn Marinolvcreate -l4 -n$lv1 $vg 45*86d7f5d3SJohn Marinolvcreate -l4 -n$lv2 $vg 46*86d7f5d3SJohn Marino 47*86d7f5d3SJohn Marinolv_count=$(get_vg_field $vg lv_count) 48*86d7f5d3SJohn Marinonot vgchange -l 1 $vg 2>err 49*86d7f5d3SJohn Marinogrep "MaxLogicalVolume is less than the current number $lv_count of LVs for" err 50*86d7f5d3SJohn Marinoaux check_vg_field_ $vg max_lv 128 51*86d7f5d3SJohn Marino 52