From 69137ea60c9dad58773a1918de6c1b00b088520c Mon Sep 17 00:00:00 2001 From: Tariq Toukan Date: Thu, 15 Jun 2017 19:07:21 +0300 Subject: [PATCH] pktgen: Specify num packets per thread Use -n , to specify the number of packets every thread sends. Zero means indefinitely. Signed-off-by: Tariq Toukan Cc: Jesper Dangaard Brouer Acked-by: Jesper Dangaard Brouer Signed-off-by: David S. Miller --- samples/pktgen/README.rst | 1 + samples/pktgen/parameters.sh | 7 ++++++- samples/pktgen/pktgen_bench_xmit_mode_netif_receive.sh | 2 +- samples/pktgen/pktgen_bench_xmit_mode_queue_xmit.sh | 2 +- samples/pktgen/pktgen_sample01_simple.sh | 2 +- samples/pktgen/pktgen_sample02_multiqueue.sh | 3 ++- samples/pktgen/pktgen_sample03_burst_single_flow.sh | 2 +- samples/pktgen/pktgen_sample04_many_flows.sh | 2 +- samples/pktgen/pktgen_sample05_flow_per_thread.sh | 2 +- 9 files changed, 15 insertions(+), 8 deletions(-) diff --git a/samples/pktgen/README.rst b/samples/pktgen/README.rst index 8365c4e..c018d67d 100644 --- a/samples/pktgen/README.rst +++ b/samples/pktgen/README.rst @@ -22,6 +22,7 @@ across the sample scripts. Usage example is printed on errors:: -m : ($DST_MAC) destination MAC-addr -t : ($THREADS) threads to start -c : ($SKB_CLONE) SKB clones send before alloc new SKB + -n : ($COUNT) num messages to send per thread, 0 means indefinitely -b : ($BURST) HW level bursting of SKBs -v : ($VERBOSE) verbose -x : ($DEBUG) debug diff --git a/samples/pktgen/parameters.sh b/samples/pktgen/parameters.sh index f70ea7d..0361475 100644 --- a/samples/pktgen/parameters.sh +++ b/samples/pktgen/parameters.sh @@ -11,6 +11,7 @@ function usage() { echo " -m : (\$DST_MAC) destination MAC-addr" echo " -t : (\$THREADS) threads to start" echo " -c : (\$SKB_CLONE) SKB clones send before alloc new SKB" + echo " -n : (\$COUNT) num messages to send per thread, 0 means indefinitely" echo " -b : (\$BURST) HW level bursting of SKBs" echo " -v : (\$VERBOSE) verbose" echo " -x : (\$DEBUG) debug" @@ -20,7 +21,7 @@ function usage() { ## --- Parse command line arguments / parameters --- ## echo "Commandline options:" -while getopts "s:i:d:m:t:c:b:vxh6" option; do +while getopts "s:i:d:m:t:c:n:b:vxh6" option; do case $option in i) # interface export DEV=$OPTARG @@ -48,6 +49,10 @@ while getopts "s:i:d:m:t:c:b:vxh6" option; do export CLONE_SKB=$OPTARG info "CLONE_SKB=$CLONE_SKB" ;; + n) + export COUNT=$OPTARG + info "COUNT=$COUNT" + ;; b) export BURST=$OPTARG info "SKB bursting: BURST=$BURST" diff --git a/samples/pktgen/pktgen_bench_xmit_mode_netif_receive.sh b/samples/pktgen/pktgen_bench_xmit_mode_netif_receive.sh index f3e1bedf..d2694a1 100755 --- a/samples/pktgen/pktgen_bench_xmit_mode_netif_receive.sh +++ b/samples/pktgen/pktgen_bench_xmit_mode_netif_receive.sh @@ -39,10 +39,10 @@ if [ -z "$DEST_IP" ]; then fi [ -z "$DST_MAC" ] && DST_MAC="90:e2:ba:ff:ff:ff" [ -z "$BURST" ] && BURST=1024 +[ -z "$COUNT" ] && COUNT="10000000" # Zero means indefinitely # Base Config DELAY="0" # Zero means max speed -COUNT="10000000" # Zero means indefinitely # General cleanup everything since last run pg_ctrl "reset" diff --git a/samples/pktgen/pktgen_bench_xmit_mode_queue_xmit.sh b/samples/pktgen/pktgen_bench_xmit_mode_queue_xmit.sh index cc102e9..43604c2 100755 --- a/samples/pktgen/pktgen_bench_xmit_mode_queue_xmit.sh +++ b/samples/pktgen/pktgen_bench_xmit_mode_queue_xmit.sh @@ -22,10 +22,10 @@ fi if [[ -n "$BURST" ]]; then err 1 "Bursting not supported for this mode" fi +[ -z "$COUNT" ] && COUNT="10000000" # Zero means indefinitely # Base Config DELAY="0" # Zero means max speed -COUNT="10000000" # Zero means indefinitely # General cleanup everything since last run pg_ctrl "reset" diff --git a/samples/pktgen/pktgen_sample01_simple.sh b/samples/pktgen/pktgen_sample01_simple.sh index 29ef4ba..35b7fe3 100755 --- a/samples/pktgen/pktgen_sample01_simple.sh +++ b/samples/pktgen/pktgen_sample01_simple.sh @@ -20,10 +20,10 @@ fi [ -z "$CLONE_SKB" ] && CLONE_SKB="0" # Example enforce param "-m" for dst_mac [ -z "$DST_MAC" ] && usage && err 2 "Must specify -m dst_mac" +[ -z "$COUNT" ] && COUNT="100000" # Zero means indefinitely # Base Config DELAY="0" # Zero means max speed -COUNT="100000" # Zero means indefinitely # Flow variation random source port between min and max UDP_MIN=9 diff --git a/samples/pktgen/pktgen_sample02_multiqueue.sh b/samples/pktgen/pktgen_sample02_multiqueue.sh index c88a161..164194d 100755 --- a/samples/pktgen/pktgen_sample02_multiqueue.sh +++ b/samples/pktgen/pktgen_sample02_multiqueue.sh @@ -13,9 +13,10 @@ root_check_run_with_sudo "$@" # Required param: -i dev in $DEV source ${basedir}/parameters.sh +[ -z "$COUNT" ] && COUNT="100000" # Zero means indefinitely + # Base Config DELAY="0" # Zero means max speed -COUNT="100000" # Zero means indefinitely [ -z "$CLONE_SKB" ] && CLONE_SKB="0" # Flow variation random source port between min and max diff --git a/samples/pktgen/pktgen_sample03_burst_single_flow.sh b/samples/pktgen/pktgen_sample03_burst_single_flow.sh index 80cf8f5..e03dd4c 100755 --- a/samples/pktgen/pktgen_sample03_burst_single_flow.sh +++ b/samples/pktgen/pktgen_sample03_burst_single_flow.sh @@ -31,10 +31,10 @@ fi [ -z "$DST_MAC" ] && DST_MAC="90:e2:ba:ff:ff:ff" [ -z "$BURST" ] && BURST=32 [ -z "$CLONE_SKB" ] && CLONE_SKB="100000" +[ -z "$COUNT" ] && COUNT="0" # Zero means indefinitely # Base Config DELAY="0" # Zero means max speed -COUNT="0" # Zero means indefinitely # General cleanup everything since last run pg_ctrl "reset" diff --git a/samples/pktgen/pktgen_sample04_many_flows.sh b/samples/pktgen/pktgen_sample04_many_flows.sh index f60412e..0fc72d2 100755 --- a/samples/pktgen/pktgen_sample04_many_flows.sh +++ b/samples/pktgen/pktgen_sample04_many_flows.sh @@ -15,6 +15,7 @@ source ${basedir}/parameters.sh [ -z "$DEST_IP" ] && DEST_IP="198.18.0.42" [ -z "$DST_MAC" ] && DST_MAC="90:e2:ba:ff:ff:ff" [ -z "$CLONE_SKB" ] && CLONE_SKB="0" +[ -z "$COUNT" ] && COUNT="0" # Zero means indefinitely # NOTICE: Script specific settings # ======= @@ -26,7 +27,6 @@ source ${basedir}/parameters.sh # Base Config DELAY="0" # Zero means max speed -COUNT="0" # Zero means indefinitely if [[ -n "$BURST" ]]; then err 1 "Bursting not supported for this mode" diff --git a/samples/pktgen/pktgen_sample05_flow_per_thread.sh b/samples/pktgen/pktgen_sample05_flow_per_thread.sh index 32ad818..f4fb794 100755 --- a/samples/pktgen/pktgen_sample05_flow_per_thread.sh +++ b/samples/pktgen/pktgen_sample05_flow_per_thread.sh @@ -20,11 +20,11 @@ source ${basedir}/parameters.sh [ -z "$DST_MAC" ] && DST_MAC="90:e2:ba:ff:ff:ff" [ -z "$CLONE_SKB" ] && CLONE_SKB="0" [ -z "$BURST" ] && BURST=32 +[ -z "$COUNT" ] && COUNT="0" # Zero means indefinitely # Base Config DELAY="0" # Zero means max speed -COUNT="0" # Zero means indefinitely # General cleanup everything since last run pg_ctrl "reset" -- 2.7.4