-unload_dep_module() {
- # libcfs 107852 17 llite_lloop,lustre,obdfilter,ost,...
- local MODULE=$1
- local DEPS=$(lsmod | awk '($1 == "'$MODULE'") { print $4 }' | tr ',' ' ')
- for SUBMOD in $DEPS; do
- unload_dep_module $SUBMOD
- done
- [ "$MODULE" = "libcfs" ] && $LCTL dk $TMP/debug || true
- $RMMOD $MODULE || true
+ # if $MODULE not loaded, return 0
+ lsmod | egrep -q "^\<$MODULE\>" || return 0
+ unload_dep_modules_exclusive $MODULE || return 1
+ rmmod $MODULE || return 1
+ return 0