105 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
			
		
		
	
	
			105 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
#!/bin/bash -v
 | 
						|
 | 
						|
#
 | 
						|
# Copyright (c) International Business Machines  Corp., 2005
 | 
						|
# Author: Avantika Mathur (mathurav@us.ibm.com)
 | 
						|
#
 | 
						|
# This library is free software; you can redistribute it and/or
 | 
						|
# modify it under the terms of the GNU Lesser General Public
 | 
						|
# License as published by the Free Software Foundation; either
 | 
						|
# version 2.1 of the License, or (at your option) any later version.
 | 
						|
#
 | 
						|
# This library is distributed in the hope that it will be useful,
 | 
						|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
						|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 | 
						|
# Lesser General Public License for more details.
 | 
						|
#
 | 
						|
# You should have received a copy of the GNU Lesser General Public
 | 
						|
# License along with this library; if not, write to the Free Software
 | 
						|
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 | 
						|
#
 | 
						|
 | 
						|
 | 
						|
disk1=disk1
 | 
						|
disk2=disk2
 | 
						|
disk3=disk3
 | 
						|
disk4=disk4
 | 
						|
fs=ext3
 | 
						|
 | 
						|
mkdir -p $disk1 $disk2 $disk3 $disk4
 | 
						|
 | 
						|
 | 
						|
 | 
						|
rm -rf $disk1/* $disk2/* $disk3/* $disk4/*
 | 
						|
 | 
						|
mkdir $disk1/a $disk1/b $disk1/c
 | 
						|
mkdir $disk2/d $disk2/e $disk2/f
 | 
						|
mkdir $disk3/g $disk3/h $disk3/i
 | 
						|
mkdir $disk4/j $disk4/k $disk4/l
 | 
						|
 | 
						|
lockfile="/.nslock"
 | 
						|
otherpid=
 | 
						|
startparent()
 | 
						|
{
 | 
						|
        rm -f $lockfile
 | 
						|
        echo $$ >| ${lockfile}parent
 | 
						|
        while [ 1 ]
 | 
						|
        do
 | 
						|
                otherpid="$(cat ${lockfile}child 2> /dev/null)"
 | 
						|
                if [ -n "$otherpid" -a -d /proc/$otherpid ]
 | 
						|
                then
 | 
						|
                        return
 | 
						|
                fi
 | 
						|
        done
 | 
						|
}
 | 
						|
 | 
						|
 | 
						|
startchild()
 | 
						|
{
 | 
						|
        rm -f $lockfile
 | 
						|
        echo $$ >| ${lockfile}child
 | 
						|
        while [ 1 ]
 | 
						|
        do
 | 
						|
                otherpid="$(cat ${lockfile}parent 2> /dev/null)"
 | 
						|
                if [ -n "$otherpid" -a -d /proc/$otherpid ]
 | 
						|
                then
 | 
						|
                        return
 | 
						|
                fi
 | 
						|
        done
 | 
						|
}
 | 
						|
 | 
						|
iamgoingahead()
 | 
						|
{
 | 
						|
        while [ 1 ]
 | 
						|
        do
 | 
						|
                pid=`cat $lockfile 2> /dev/null`
 | 
						|
                if [ "$pid" == "$$" ]
 | 
						|
                then
 | 
						|
                        return
 | 
						|
                fi
 | 
						|
                sleep 1
 | 
						|
        done
 | 
						|
}
 | 
						|
 | 
						|
 | 
						|
goahead()
 | 
						|
{
 | 
						|
        set -x
 | 
						|
        echo $otherpid > $lockfile
 | 
						|
        set +x
 | 
						|
}
 | 
						|
 | 
						|
 | 
						|
check(){
 | 
						|
	"${FS_BIND_ROOT}/bin/check_prop" $*
 | 
						|
	ret=$?
 | 
						|
	if [ $ret -ne 0 ]; then
 | 
						|
		result=$ret
 | 
						|
	fi
 | 
						|
}
 | 
						|
export result=0
 | 
						|
 | 
						|
cleanup(){
 | 
						|
	rm -rf "disk"*
 | 
						|
}
 |