File: 05loop.sh

package info (click to toggle)
module-init-tools 3.12-2
  • links: PTS
  • area: main
  • in suites: squeeze
  • size: 4,296 kB
  • ctags: 1,264
  • sloc: sh: 7,010; ansic: 6,584; makefile: 1,114
file content (33 lines) | stat: -rwxr-xr-x 1,373 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#! /bin/sh
# Loop detection test.

for ENDIAN in $TEST_ENDIAN; do
for BITNESS in $TEST_BITS; do

rm -rf tests/tmp/*

# Create inputs
MODULE_DIR=tests/tmp/lib/modules/$MODTEST_UNAME
mkdir -p $MODULE_DIR
ln tests/data/$BITNESS$ENDIAN/loop/loop1-$BITNESS.ko \
   tests/data/$BITNESS$ENDIAN/loop/loop2-$BITNESS.ko \
   tests/data/$BITNESS$ENDIAN/loop/loop_dep-$BITNESS.ko \
   $MODULE_DIR

# Expect no normal output.
[ "`depmod 2>tests/tmp/stderr`" = "" ]

# Check results: expect 0 lines (all have loops).
[ `grep -vc '^#' < $MODULE_DIR/modules.dep` = 0 ]

# Now, we should have only one error report, for loop1, and 3
# warnings.
[ `grep -vc '^#' < tests/tmp/stderr` = 4 ]

[ "`grep -w /lib/modules/$MODTEST_UNAME/loop1-$BITNESS.ko\ ignored tests/tmp/stderr`" = "WARNING: Module /lib/modules/$MODTEST_UNAME/loop1-$BITNESS.ko ignored, due to loop" ]
[ "`grep -w /lib/modules/$MODTEST_UNAME/loop2-$BITNESS.ko tests/tmp/stderr`" = "WARNING: Module /lib/modules/$MODTEST_UNAME/loop2-$BITNESS.ko ignored, due to loop" ]
[ "`grep -w /lib/modules/$MODTEST_UNAME/loop_dep-$BITNESS.ko tests/tmp/stderr`" = "WARNING: Module /lib/modules/$MODTEST_UNAME/loop_dep-$BITNESS.ko ignored, due to loop" ]
[ "`grep -w detected tests/tmp/stderr`" = "WARNING: Loop detected: /lib/modules/$MODTEST_UNAME/loop1-$BITNESS.ko needs loop2-$BITNESS.ko which needs loop1-$BITNESS.ko again!" ]

done
done