summaryrefslogtreecommitdiff
path: root/ubi-utils/old-utils/scripts/ubi_jffs2_test.sh
diff options
context:
space:
mode:
authorArtem Bityutskiy <Artem.Bityutskiy@nokia.com>2010-09-28 10:47:06 +0300
committerArtem Bityutskiy <Artem.Bityutskiy@nokia.com>2010-09-28 10:47:06 +0300
commit94a20240f9d6776619d7652013bb10131ddad1fc (patch)
treee92336c72820e7c6daa8468913fbcc523968d257 /ubi-utils/old-utils/scripts/ubi_jffs2_test.sh
parent351ac23f8d468b2b9bc60dfcbaacbe3d55ec11f9 (diff)
ubi-utils: remove old ubi-utils
The utilities are unmaintained for long time, and many of them do not even work, just compile, and no on complains about this. This suggests they are unused and we can now safely kill them. Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
Diffstat (limited to 'ubi-utils/old-utils/scripts/ubi_jffs2_test.sh')
-rwxr-xr-xubi-utils/old-utils/scripts/ubi_jffs2_test.sh411
1 files changed, 0 insertions, 411 deletions
diff --git a/ubi-utils/old-utils/scripts/ubi_jffs2_test.sh b/ubi-utils/old-utils/scripts/ubi_jffs2_test.sh
deleted file mode 100755
index 883903d..0000000
--- a/ubi-utils/old-utils/scripts/ubi_jffs2_test.sh
+++ /dev/null
@@ -1,411 +0,0 @@
-#!/bin/sh
-#
-# UBI Volume creation/deletion/write/read and JFFS2 on top of UBI
-# testcases.
-#
-# Written in shell language to reduce dependencies to more sophisticated
-# interpreters, which may not be available on some stupid platforms.
-#
-# Author: Frank Haverkamp <haver@vnet.ibm.com>
-#
-# 1.0 Initial version
-# 1.1 Added fixup for delayed device node creation by udev
-# This points to a problem in the tools, mabe in the desing
-# Tue Oct 31 14:14:54 CET 2006
-#
-
-VERSION="1.1"
-
-export PATH=$PATH:/bin:~/bin:/usr/local/bin:/home/dedekind/work/prj/ubi/tools/flashutils/bin/
-
-ITERATIONS=250
-ALIGNMENT=2048
-
-UBIMKVOL="ubimkvol -a $ALIGNMENT"
-UBIRMVOL=ubirmvol
-UBIUPDATEVOL=ubiupdatevol
-
-SIZE_512K=524288
-SIZE_1M=1310720
-
-MINVOL=10
-MAXVOL=12
-
-TLOG=/dev/null
-
-#
-# To have a standardized output I define the following function to be
-# used when a test was ok or when it failed.
-#
-failed ()
-{
- echo "FAILED"
-}
-
-passed ()
-{
- echo "PASSED"
-}
-
-#
-# Print sucess message. Consider to exit with zero as return code.
-#
-exit_success ()
-{
- echo "SUCCESS"
- exit 0
-}
-
-#
-# Print failure message. Consider to exit with non zero return code.
-#
-exit_failure ()
-{
- echo "FAILED"
- exit 1
-}
-
-###############################################################################
-#
-# START
-#
-###############################################################################
-
-fix_sysfs_issue ()
-{
- echo "*** Fixing the sysfs issue with the /dev nodes ... "
-
- minor=0
- major=`grep ubi0 /proc/devices | sed -e 's/\(.*\) ubi0/\1/'`
-
- rm -rf /dev/ubi0
- mknod /dev/ubi0 c $major 0
-
- for minor in `seq $MINVOL $MAXVOL`; do
- echo " -> mknod /dev/ubi0_$minor c $major $(($minor + 1))"
- rm -rf /dev/ubi0_$minor
- mknod /dev/ubi0_$minor c $major $(($minor + 1))
- done
- passed
-}
-
-#
-# FIXME Udev needs some time until the device nodes are created.
-# This will cause trouble if after ubimkvol an update attempt
-# is started immediately, since the device node is not yet
-# available. We should either fix the tools with inotify or
-# other ideas or figure out a different way to solve the problem
-# e.g. to use ubi0 and make the volume device nodes obsolete...
-#
-udev_wait ()
-{
- echo -n "FIXME Waiting for udev to create/delete device node "
- grep 2\.6\.5 /proc/version > /dev/null
- if [ $? -eq "0" ]; then
- for i in `seq 0 5`; do
- sleep 1; echo -n ".";
- done
- echo " ok"
- fi
-}
-
-# delete_volume - Delete a volume. If it does not exist, do not try
-# to delete it.
-# @id: volume id
-#
-delete_volume ()
-{
- volume=$1
-
- ### FIXME broken sysfs!!!!
- if [ -e /sys/class/ubi/$volume -o \
- -e /sys/class/ubi/ubi0/$volume -o \
- -e /sys/class/ubi/ubi0_$volume ]; then
-
- echo "*** Truncate volume if it exists ... "
- echo " $UBIUPDATEVOL -d0 -n$volume -t"
- $UBIUPDATEVOL -d0 -n$volume -t
- if [ $? -ne "0" ] ; then
- exit_failure
- fi
- passed
-
- echo -n "*** Delete volume if it exists ... "
- $UBIRMVOL -d0 -n$volume
- if [ $? -ne "0" ] ; then
- exit_failure
- fi
- passed
- # udev_wait
- fi
-}
-
-# writevol_test - Tests volume creation and writing data to it.
-#
-# @volume: Volume number
-# @size: Size of random data to write
-# @type: Volume type static or dynamic
-#
-writevol_test ()
-{
- volume=$1
- size=$2
- type=$3
-
- echo "*** Write volume test with size $size"
-
-### Make sure that volume exist, delete existing volume, create new
-
- delete_volume $volume
-
- echo "*** Try to create volume"
- echo " $UBIMKVOL -d0 -n$volume -t$type -NNEW$volume -s $size ... "
- $UBIMKVOL -d0 -n$volume -t$type -N"NEW$volume" -s $size
- if [ $? -ne "0" ] ; then
- exit_failure
- fi
- passed
- udev_wait
-
-### Try to create same volume again
- echo -n "*** Try to create some volume again, this must fail ... "
- $UBIMKVOL -d0 -n$volume -t$type -N"NEW$volume" -s $size
- if [ $? -eq "0" ] ; then
- exit_failure
- fi
- passed
-
-### Now create test data, write it, read it, compare it
- echo -n "*** Create test data ... "
- dd if=/dev/urandom of=testdata.bin bs=$size count=1
- if [ $? -ne "0" ] ; then
- exit_failure
- fi
- passed
-
- echo "*** Now writing data to volume ... "
- echo " $UBIUPDATEVOL -d0 -n$volume testdata.bin"
- ls -l testdata.bin
- $UBIUPDATEVOL -d0 -n$volume testdata.bin
- if [ $? -ne "0" ] ; then
- exit_failure
- fi
- passed
-
- echo "*** Download data with dd bs=1 ... "
- dd if=/dev/ubi0_$volume of=readdata.bin bs=$size count=1
- if [ $? -ne "0" ] ; then
- exit_failure
- fi
- passed
-
- echo -n "*** Comparing data ... "
- cmp readdata.bin testdata.bin
- if [ $? -ne "0" ] ; then
- exit_failure
- fi
- passed
-
- echo -n "*** Now truncate volume ... "
- $UBIUPDATEVOL -d0 -n$volume -t
- if [ $? -ne "0" ] ; then
- exit_failure
- fi
- passed
-}
-
-jffs2_torture ()
-{
- cat /dev/null > TLOG
-
- echo "*** Torture test ... "
-
- for i in `seq $iterations`; do
- dd if=/dev/urandom of=test.bin bs=$i count=1 2>> $TLOG
- if [ $? -ne "0" ] ; then
- echo "Testing $i byte (dd if=/dev/urandom of=foo bs=$i count=1) ... "
- exit_failure
- fi
- #passed
-
- dd if=test.bin of=new.bin bs=$i count=1 2>> $TLOG
- if [ $? -ne "0" ] ; then
- echo "dd if=test.bin of=new.bin bs=$i count=1 2>> $TLOG"
- exit_failure
- fi
- #passed
-
- #echo "Comparing files ... "
- cmp test.bin new.bin
- dd if=test.bin of=new.bin bs=$i count=1 2>> $TLOG
- if [ $? -ne "0" ] ; then
- exit_failure
- fi
- #passed
- #echo -n "."
- done
-
- echo -n "step0:ok "
-
- for i in `seq $iterations`; do
- dd if=/dev/urandom of=foo bs=$i count=1 2>> $TLOG
- if [ $? -ne "0" ] ; then
- echo "Testing $i byte (dd if=/dev/urandom of=foo bs=$i count=1) ... "
- exit_failure
- fi
- #passed
- done
-
- echo -n "step1:ok "
-
- for i in `seq $iterations`; do
- dd if=/dev/zero of=foo bs=1 count=$i 2>> $TLOG
- if [ $? -ne "0" ] ; then
- echo "Testing $i byte (dd if=/dev/zero of=foo bs=1 count=$i) ... "
- exit_failure
- fi
- #passed
- done
-
- echo -n "step2:ok "
-
- for i in `seq $iterations`; do
- dd if=/dev/zero of=foo bs=$i count=16 2>> $TLOG
- if [ $? -ne "0" ] ; then
- echo "Testing $i byte (dd if=/dev/zero of=foo bs=$i count=1024) ... "
- exit_failure
- fi
- #passed
- done
-
- echo -n "step3:ok "
-
- passed
-}
-
-# writevol_test - Tests volume creation and writing data to it.
-#
-# @volume: Volume number
-# @size: Size of random data to write
-# @type: Volume type static or dynamic
-#
-jffs2_test ()
-{
- name=$1
- iterations=$2
- directory=`pwd`
-
- ### Setup
- ulimit -c unlimited
-
- echo -n "*** Create directory /mnt/$name ... "
- mkdir -p /mnt/$name
- if [ $? -ne "0" ] ; then
- exit_failure
- fi
- passed
-
- echo -n "*** mount -t jffs2 mtd:$name /mnt/$name ... "
- mount -t jffs2 mtd:$name /mnt/$name
- if [ $? -ne "0" ] ; then
- exit_failure
- fi
- passed
-
- echo -n "*** change directory ... "
- cd /mnt/$name
- if [ $? -ne "0" ] ; then
- exit_failure
- fi
- passed
-
- ls
- echo "*** list directory ... "
- ls -la
- if [ $? -ne "0" ] ; then
- exit_failure
- fi
- passed
-
- ### Torture
- echo -n "*** touch I_WAS_HERE ... "
- touch I_WAS_HERE
- if [ $? -ne "0" ] ; then
- exit_failure
- fi
- passed
-
- jffs2_torture
-
- echo "*** list directory ... "
- ls -la
- if [ $? -ne "0" ] ; then
- exit_failure
- fi
- passed
-
- ### Cleanup
- echo -n "*** go back ... "
- cd $directory
- if [ $? -ne "0" ] ; then
- exit_failure
- fi
- passed
-
- ### Still mounted, ubiupdatevol must fail!
-
- echo -n "*** $UBIUPDATEVOL -d0 -n$volume -t must fail! ..."
- $UBIUPDATEVOL -d0 -n$volume -t
- if [ $? -eq "0" ] ; then
- exit_failure
- fi
- passed
-
- echo -n "*** umount /mnt/$name ... "
- umount /mnt/$name
- if [ $? -ne "0" ] ; then
- exit_failure
- fi
- passed
-
- return
-}
-
-echo "***********************************************************************"
-echo "* UBI JFFS2 Testing starts now ... *"
-echo "* Good luck! *"
-echo "***********************************************************************"
-echo "VERSION: $VERSION"
-
-# Set to zero if not running on example hardware
-grep ubi /proc/devices > /dev/null
-if [ $? -ne "0" ]; then
- echo "No UBI found in /proc/devices! I am broken!"
- exit_failure
-fi
-
-# Set to zero if not running on example hardware
-grep 1142 /proc/cpuinfo > /dev/null
-if [ $? -eq "0" ]; then
- echo "Running on example hardware"
- mount -o remount,rw / /
- sleep 1
- fix_sysfs_issue
-else
- echo "Running on Artems hardware"
-fi
-
-for volume in `seq $MINVOL $MAXVOL`; do
- echo -n "************ VOLUME $volume NEW$volume "
- echo "******************************************"
- writevol_test $volume $SIZE_1M dynamic
- jffs2_test NEW$volume $ITERATIONS
- delete_volume $volume
-done
-
-echo "***********************************************************************"
-echo "* Congratulations, no errors found! *"
-echo "* Have fun with your cool UBI system! *"
-echo "***********************************************************************"
-
-exit_success