Browse Source

tests: Add channels argument to run-all.sh and start.sh

Add an option to run-all.sh and start.sh to get as an argument the
number of concurrent channels that mac80211_hwsim will be loaded with.
To start mac80211_hwsim with more than one channel, the following
parameter should be added to command line: channels=<num_channels>
The default is one channel (no concurrent channels).
The driver should be loaded with multi channel support in order to run
some tests.

Signed-off-by: Haim Dreyfuss <haim.dreyfuss@intel.com>
Haim Dreyfuss 10 years ago
parent
commit
57d909eeff
3 changed files with 27 additions and 2 deletions
  1. 9 0
      tests/hwsim/README
  2. 8 1
      tests/hwsim/run-all.sh
  3. 10 1
      tests/hwsim/start.sh

+ 9 - 0
tests/hwsim/README

@@ -146,6 +146,9 @@ conditions:
 # run normal test cases with Linux tracing
 ./run-all.sh trace
 
+# run normal test cases with multi channel support (see details below)
+./run-all.sh channels=<num of channels>
+
 run-all.sh directs debug logs into the logs subdirectory (or $LOGDIR if
 present in the environment). Log file names include the current UNIX
 timestamp and a postfix to identify the specific log:
@@ -170,6 +173,12 @@ used to specify that all test cases from a single file are to be
 run. Test name as the last command line argument can be specified that a
 single test case is to be run (e.g., "./run-tests.py ap_pmf_required").
 
+Notice that some tests require the driver to support concurrent
+operation on multi channels in order to run. These tests will be skipped
+in case the driver does not support multi channels. To enable support
+for multi channel, the number of supported channel is passed as an
+argument to run-all.sh or start.sh
+
 
 Adding/modifying test cases
 ---------------------------

+ 8 - 1
tests/hwsim/run-all.sh

@@ -43,7 +43,14 @@ else
 	unset TRACE_ARGS
 fi
 
-if ! ./start.sh $VALGRIND $TRACE; then
+NUM_CH=$1
+if [ x${NUM_CH%=[0-9]*} = "xchannels" ]; then
+	shift
+else
+	unset NUM_CH
+fi
+
+if ! ./start.sh $VALGRIND $TRACE $NUM_CH; then
 	if ! [ -z "$LOGBASEDIR" ] ; then
 		echo "Could not start test environment" > $LOGDIR/run
 	fi

+ 10 - 1
tests/hwsim/start.sh

@@ -68,7 +68,16 @@ else
 fi
 
 $DIR/stop.sh
-test -f /proc/modules && sudo modprobe mac80211_hwsim radios=6
+
+TMP=$1
+if [ x${TMP%=[0-9]*} = "xchannels" ]; then
+	NUM_CH=${TMP#channels=}
+	shift
+else
+	NUM_CH=1
+fi
+
+test -f /proc/modules && sudo modprobe mac80211_hwsim radios=6 channels=$NUM_CH
 sudo ifconfig hwsim0 up
 sudo $WLANTEST -i hwsim0 -n $LOGDIR/hwsim0.pcapng -c -dt -L $LOGDIR/hwsim0 &
 for i in 0 1 2; do