2 # Test module dependencies.
9 MODULE_DIR
=tests
/tmp
/lib
/modules
/$MODTEST_UNAME
11 ln tests
/data
/$BITNESS/normal
/export_dep-
$BITNESS.ko \
12 tests
/data
/$BITNESS/normal
/noexport_dep-
$BITNESS.ko \
13 tests
/data
/$BITNESS/normal
/export_nodep-
$BITNESS.ko \
14 tests
/data
/$BITNESS/normal
/noexport_nodep-
$BITNESS.ko \
15 tests
/data
/$BITNESS/normal
/noexport_doubledep-
$BITNESS.ko \
18 # Now create modules.dep.bin
19 cat > $MODULE_DIR/modules.dep.bin.temp
<<EOF
20 noexport_nodep_$BITNESS noexport_nodep-$BITNESS.ko:
21 noexport_doubledep_$BITNESS noexport_doubledep-$BITNESS.ko: export_dep-$BITNESS.ko export_nodep-$BITNESS.ko
22 noexport_dep_$BITNESS noexport_dep-$BITNESS.ko: export_nodep-$BITNESS.ko
23 export_nodep_$BITNESS export_nodep-$BITNESS.ko:
24 export_dep_$BITNESS export_dep-$BITNESS.ko: export_nodep-$BITNESS.ko
26 modindex
-o $MODULE_DIR/modules.dep.bin
< $MODULE_DIR/modules.dep.bin.temp
29 SIZE_NOEXPORT_NODEP
=`wc -c < tests/data/$BITNESS/normal/noexport_nodep-$BITNESS.ko`
30 SIZE_EXPORT_NODEP
=`wc -c < tests/data/$BITNESS/normal/export_nodep-$BITNESS.ko`
31 SIZE_NOEXPORT_DEP
=`wc -c < tests/data/$BITNESS/normal/noexport_dep-$BITNESS.ko`
32 SIZE_EXPORT_DEP
=`wc -c < tests/data/$BITNESS/normal/export_dep-$BITNESS.ko`
33 SIZE_NOEXPORT_DOUBLEDEP
=`wc -c < tests/data/$BITNESS/normal/noexport_doubledep-$BITNESS.ko`
36 mkdir
-p tests
/tmp
/sys
/module
38 [ "`modprobe noexport_nodep-$BITNESS 2>&1`" = "INIT_MODULE: $SIZE_NOEXPORT_NODEP " ]
39 [ "`modprobe noexport_nodep-$BITNESS OPTIONS 2>&1`" = "INIT_MODULE: $SIZE_NOEXPORT_NODEP OPTIONS" ]
41 [ "`modprobe export_nodep-$BITNESS 2>&1`" = "INIT_MODULE: $SIZE_EXPORT_NODEP " ]
42 [ "`modprobe export_nodep-$BITNESS OPTIONS 2>&1`" = "INIT_MODULE: $SIZE_EXPORT_NODEP OPTIONS" ]
44 [ "`modprobe noexport_dep-$BITNESS 2>&1`" = "INIT_MODULE: $SIZE_EXPORT_NODEP
45 INIT_MODULE: $SIZE_NOEXPORT_DEP " ]
46 [ "`modprobe noexport_dep-$BITNESS OPTIONS 2>&1`" = "INIT_MODULE: $SIZE_EXPORT_NODEP
47 INIT_MODULE: $SIZE_NOEXPORT_DEP OPTIONS" ]
49 [ "`modprobe export_dep-$BITNESS 2>&1`" = "INIT_MODULE: $SIZE_EXPORT_NODEP
50 INIT_MODULE: $SIZE_EXPORT_DEP " ]
51 [ "`modprobe export_dep-$BITNESS OPTIONS 2>&1`" = "INIT_MODULE: $SIZE_EXPORT_NODEP
52 INIT_MODULE: $SIZE_EXPORT_DEP OPTIONS" ]
54 [ "`modprobe noexport_doubledep-$BITNESS 2>&1`" = "INIT_MODULE: $SIZE_EXPORT_NODEP
55 INIT_MODULE: $SIZE_EXPORT_DEP
56 INIT_MODULE: $SIZE_NOEXPORT_DOUBLEDEP " ]
57 [ "`modprobe noexport_doubledep-$BITNESS OPTIONS 2>&1`" = "INIT_MODULE: $SIZE_EXPORT_NODEP
58 INIT_MODULE: $SIZE_EXPORT_DEP
59 INIT_MODULE: $SIZE_NOEXPORT_DOUBLEDEP OPTIONS" ]
61 # Now make a fake /sys/module structure for the test
62 mkdir
-p tests
/tmp
/sys
/module
63 mkdir
-p tests
/tmp
/sys
/module
/noexport_nodep_
$BITNESS
64 mkdir
-p tests
/tmp
/sys
/module
/noexport_dep_
$BITNESS
65 mkdir
-p tests
/tmp
/sys
/module
/export_nodep_
$BITNESS
66 mkdir
-p tests
/tmp
/sys
/module
/export_dep_
$BITNESS
67 mkdir
-p tests
/tmp
/sys
/module
/noexport_doubledep_
$BITNESS
68 echo live
> tests
/tmp
/sys
/module
/noexport_nodep_
$BITNESS/initstate
69 echo live
> tests
/tmp
/sys
/module
/noexport_dep_
$BITNESS/initstate
70 echo live
> tests
/tmp
/sys
/module
/export_nodep_
$BITNESS/initstate
71 echo live
> tests
/tmp
/sys
/module
/export_dep_
$BITNESS/initstate
72 echo live
> tests
/tmp
/sys
/module
/noexport_doubledep_
$BITNESS/initstate
75 [ "`modprobe -r noexport_nodep-$BITNESS 2>&1`" = "DELETE_MODULE: noexport_nodep_$BITNESS EXCL " ]
76 [ "`modprobe -r export_nodep-$BITNESS 2>&1`" = "DELETE_MODULE: export_nodep_$BITNESS EXCL " ]
77 [ "`modprobe -r noexport_dep-$BITNESS 2>&1`" = "DELETE_MODULE: noexport_dep_$BITNESS EXCL
78 DELETE_MODULE: export_nodep_$BITNESS EXCL " ]
79 [ "`modprobe -r export_dep-$BITNESS 2>&1`" = "DELETE_MODULE: export_dep_$BITNESS EXCL
80 DELETE_MODULE: export_nodep_$BITNESS EXCL " ]
81 [ "`modprobe -r noexport_doubledep-$BITNESS 2>&1`" = "DELETE_MODULE: noexport_doubledep_$BITNESS EXCL
82 DELETE_MODULE: export_dep_$BITNESS EXCL
83 DELETE_MODULE: export_nodep_$BITNESS EXCL " ]