ShellCheck - shell script analysis tool version: 0.10.0 license: GNU General Public License, version 3 website: https://www.shellcheck.net Redirect to /tmp/tmp.aE7sIwc1fL and /tmp/tmp.0irwee1jmg Tree base: 4701ee5044fb ("be2net: Use correct byte order and format string for TCP seq and ack_seq") Now at: 541da686b97a ("netdevsim: add couple of fw_update_flash_* debugfs knobs") ====== Checking before the patch ====== Checking tools/testing/selftests/drivers/net/netdevsim/devlink.sh - f1444de82439af96e37a8691454de2b2a7f6ecedf0f4a3b16dfb249a22e93677 In devlink.sh line 4: lib_dir=$(dirname $0)/../../../net/forwarding ^-- SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: lib_dir=$(dirname "$0")/../../../net/forwarding In devlink.sh line 6: ALL_TESTS="fw_flash_test params_test regions_test reload_test \ ^-------^ SC2034 (warning): ALL_TESTS appears unused. Verify use (or export if used externally). In devlink.sh line 9: NUM_NETIFS=0 ^--------^ SC2034 (warning): NUM_NETIFS appears unused. Verify use (or export if used externally). In devlink.sh line 10: source $lib_dir/lib.sh ^-------------^ SC1091 (info): Not following: ./lib.sh: openBinaryFile: does not exist (No such file or directory) ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: source "$lib_dir"/lib.sh In devlink.sh line 22: "$@" | grep -q $DL_HANDLE ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: "$@" | grep -q "$DL_HANDLE" In devlink.sh line 43: devlink dev flash $DL_HANDLE file $DUMMYFILE ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink dev flash "$DL_HANDLE" file "$DUMMYFILE" In devlink.sh line 46: devlink dev flash $DL_HANDLE file $DUMMYFILE component fw.mgmt ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink dev flash "$DL_HANDLE" file "$DUMMYFILE" component fw.mgmt In devlink.sh line 49: devlink dev flash $DL_HANDLE file $DUMMYFILE overwrite settings ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink dev flash "$DL_HANDLE" file "$DUMMYFILE" overwrite settings In devlink.sh line 52: echo "1"> $DEBUGFS_DIR/fw_update_overwrite_mask ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: echo "1"> "$DEBUGFS_DIR"/fw_update_overwrite_mask In devlink.sh line 55: devlink dev flash $DL_HANDLE file $DUMMYFILE overwrite settings ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink dev flash "$DL_HANDLE" file "$DUMMYFILE" overwrite settings In devlink.sh line 58: devlink dev flash $DL_HANDLE file $DUMMYFILE overwrite identifiers ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink dev flash "$DL_HANDLE" file "$DUMMYFILE" overwrite identifiers In devlink.sh line 61: echo "3"> $DEBUGFS_DIR/fw_update_overwrite_mask ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: echo "3"> "$DEBUGFS_DIR"/fw_update_overwrite_mask In devlink.sh line 64: devlink dev flash $DL_HANDLE file $DUMMYFILE overwrite identifiers overwrite settings ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink dev flash "$DL_HANDLE" file "$DUMMYFILE" overwrite identifiers overwrite settings In devlink.sh line 67: echo "n"> $DEBUGFS_DIR/fw_update_status ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: echo "n"> "$DEBUGFS_DIR"/fw_update_status In devlink.sh line 70: devlink dev flash $DL_HANDLE file $DUMMYFILE ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink dev flash "$DL_HANDLE" file "$DUMMYFILE" In devlink.sh line 89: devlink dev param set $DL_HANDLE name $name cmode driverinit value $value ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink dev param set "$DL_HANDLE" name "$name" cmode driverinit value "$value" In devlink.sh line 100: value=$(param_get $name) ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: value=$(param_get "$name") In devlink.sh line 104: value=$(<$DEBUGFS_DIR/$name) ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: value=$(<"$DEBUGFS_DIR"/"$name") In devlink.sh line 114: local max_macs ^------^ SC2034 (warning): max_macs appears unused. Verify use (or export if used externally). In devlink.sh line 115: local test1 ^---^ SC2034 (warning): test1 appears unused. Verify use (or export if used externally). In devlink.sh line 128: devlink dev reload $DL_HANDLE ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink dev reload "$DL_HANDLE" In devlink.sh line 141: size=$(devlink region show $DL_HANDLE/$name -j | jq -e -r '.[][].size') ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: size=$(devlink region show "$DL_HANDLE"/"$name" -j | jq -e -r '.[][].size') In devlink.sh line 143: [ $size -eq 32768 ] ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: [ "$size" -eq 32768 ] In devlink.sh line 154: count=$(devlink region show $DL_HANDLE/$name -j | jq -e -r '.[][].snapshot | length') ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: count=$(devlink region show "$DL_HANDLE"/"$name" -j | jq -e -r '.[][].snapshot | length') In devlink.sh line 155: [ $count -eq $expected_count ] ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-------------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: [ "$count" -eq "$expected_count" ] In devlink.sh line 168: echo ""> $DEBUGFS_DIR/take_snapshot ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: echo ""> "$DEBUGFS_DIR"/take_snapshot In devlink.sh line 172: echo ""> $DEBUGFS_DIR/take_snapshot ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: echo ""> "$DEBUGFS_DIR"/take_snapshot In devlink.sh line 176: echo ""> $DEBUGFS_DIR/take_snapshot ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: echo ""> "$DEBUGFS_DIR"/take_snapshot In devlink.sh line 180: devlink region del $DL_HANDLE/dummy snapshot 1 ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink region del "$DL_HANDLE"/dummy snapshot 1 In devlink.sh line 185: devlink region new $DL_HANDLE/dummy snapshot 25 ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink region new "$DL_HANDLE"/dummy snapshot 25 In devlink.sh line 190: devlink region dump $DL_HANDLE/dummy snapshot 25 >> /dev/null ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink region dump "$DL_HANDLE"/dummy snapshot 25 >> /dev/null In devlink.sh line 193: devlink region read $DL_HANDLE/dummy snapshot 25 addr 0 len 1 >> /dev/null ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink region read "$DL_HANDLE"/dummy snapshot 25 addr 0 len 1 >> /dev/null In devlink.sh line 196: devlink region read $DL_HANDLE/dummy snapshot 25 addr 128 len 128 >> /dev/null ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink region read "$DL_HANDLE"/dummy snapshot 25 addr 128 len 128 >> /dev/null In devlink.sh line 199: devlink region read $DL_HANDLE/dummy snapshot 25 addr 128 len $((1<<32)) >> /dev/null ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink region read "$DL_HANDLE"/dummy snapshot 25 addr 128 len $((1<<32)) >> /dev/null In devlink.sh line 202: devlink region read $DL_HANDLE/dummy snapshot 25 addr $((1<<32)) len 128 >> /dev/null 2>&1 ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink region read "$DL_HANDLE"/dummy snapshot 25 addr $((1<<32)) len 128 >> /dev/null 2>&1 In devlink.sh line 205: devlink region del $DL_HANDLE/dummy snapshot 25 ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink region del "$DL_HANDLE"/dummy snapshot 25 In devlink.sh line 210: sid=$(devlink -j region new $DL_HANDLE/dummy | jq '.[][][][]') ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: sid=$(devlink -j region new "$DL_HANDLE"/dummy | jq '.[][][][]') In devlink.sh line 215: devlink region dump $DL_HANDLE/dummy snapshot $sid >> /dev/null ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink region dump "$DL_HANDLE"/dummy snapshot "$sid" >> /dev/null In devlink.sh line 218: devlink region del $DL_HANDLE/dummy snapshot $sid ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink region del "$DL_HANDLE"/dummy snapshot "$sid" In devlink.sh line 230: devlink dev reload $DL_HANDLE ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink dev reload "$DL_HANDLE" In devlink.sh line 233: echo "y"> $DEBUGFS_DIR/fail_reload ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: echo "y"> "$DEBUGFS_DIR"/fail_reload In devlink.sh line 236: devlink dev reload $DL_HANDLE ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink dev reload "$DL_HANDLE" In devlink.sh line 239: echo "n"> $DEBUGFS_DIR/fail_reload ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: echo "n"> "$DEBUGFS_DIR"/fail_reload In devlink.sh line 242: devlink dev reload $DL_HANDLE ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink dev reload "$DL_HANDLE" In devlink.sh line 245: echo "y"> $DEBUGFS_DIR/dont_allow_reload ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: echo "y"> "$DEBUGFS_DIR"/dont_allow_reload In devlink.sh line 248: devlink dev reload $DL_HANDLE ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink dev reload "$DL_HANDLE" In devlink.sh line 251: echo "n"> $DEBUGFS_DIR/dont_allow_reload ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: echo "n"> "$DEBUGFS_DIR"/dont_allow_reload In devlink.sh line 254: devlink dev reload $DL_HANDLE ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink dev reload "$DL_HANDLE" In devlink.sh line 269: devlink dev reload $DL_HANDLE netns testns1 ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink dev reload "$DL_HANDLE" netns testns1 In devlink.sh line 272: devlink -N testns1 dev reload $DL_HANDLE netns testns2 ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink -N testns1 dev reload "$DL_HANDLE" netns testns2 In devlink.sh line 307: devlink dev reload $DL_HANDLE netns testns1 ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink dev reload "$DL_HANDLE" netns testns1 In devlink.sh line 312: ip -n testns1 link add name $DUMMYDEV type dummy ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -n testns1 link add name "$DUMMYDEV" type dummy In devlink.sh line 314: ip -n testns1 link set $DUMMYDEV up ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -n testns1 link set "$DUMMYDEV" up In devlink.sh line 316: ip -n testns1 a a 192.0.1.1/24 dev $DUMMYDEV ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -n testns1 a a 192.0.1.1/24 dev "$DUMMYDEV" In devlink.sh line 319: local occ=$(res_val_get testns1 IPv4 fib occ) ^-^ SC2155 (warning): Declare and assign separately to avoid masking return values. In devlink.sh line 324: devlink -N testns1 resource set $DL_HANDLE path IPv4/fib size $limit ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink -N testns1 resource set "$DL_HANDLE" path IPv4/fib size "$limit" In devlink.sh line 326: local size_new=$(res_val_get testns1 IPv4 fib size_new) ^------^ SC2155 (warning): Declare and assign separately to avoid masking return values. In devlink.sh line 330: devlink -N testns1 dev reload $DL_HANDLE ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink -N testns1 dev reload "$DL_HANDLE" In devlink.sh line 332: local size=$(res_val_get testns1 IPv4 fib size) ^--^ SC2155 (warning): Declare and assign separately to avoid masking return values. In devlink.sh line 350: ip -n testns2 link add name $DUMMYDEV type dummy ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -n testns2 link add name "$DUMMYDEV" type dummy In devlink.sh line 352: ip -n testns2 link set $DUMMYDEV up ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -n testns2 link set "$DUMMYDEV" up In devlink.sh line 354: ip -n testns2 a a 192.0.1.1/24 dev $DUMMYDEV ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -n testns2 a a 192.0.1.1/24 dev "$DUMMYDEV" In devlink.sh line 361: devlink -N testns1 dev reload $DL_HANDLE netns testns2 ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink -N testns1 dev reload "$DL_HANDLE" netns testns2 In devlink.sh line 364: devlink -N testns2 resource set $DL_HANDLE path IPv4/fib size ' -1' ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink -N testns2 resource set "$DL_HANDLE" path IPv4/fib size ' -1' In devlink.sh line 367: devlink -N testns2 dev reload $DL_HANDLE netns 1 ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink -N testns2 dev reload "$DL_HANDLE" netns 1 In devlink.sh line 402: devlink health show $DL_HANDLE reporter empty >/dev/null ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink health show "$DL_HANDLE" reporter empty >/dev/null In devlink.sh line 405: devlink health dump show $DL_HANDLE reporter empty >/dev/null ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink health dump show "$DL_HANDLE" reporter empty >/dev/null In devlink.sh line 408: devlink health diagnose $DL_HANDLE reporter empty >/dev/null ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink health diagnose "$DL_HANDLE" reporter empty >/dev/null In devlink.sh line 411: devlink health recover $DL_HANDLE reporter empty ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink health recover "$DL_HANDLE" reporter empty In devlink.sh line 426: local show=$(devlink health show $DL_HANDLE reporter $name -j | jq -e -r ".[][][]") ^--^ SC2155 (warning): Declare and assign separately to avoid masking return values. ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: local show=$(devlink health show "$DL_HANDLE" reporter "$name" -j | jq -e -r ".[][][]") In devlink.sh line 429: local state=$(echo $show | jq -r ".state") ^---^ SC2155 (warning): Declare and assign separately to avoid masking return values. ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: local state=$(echo "$show" | jq -r ".state") In devlink.sh line 433: local error=$(echo $show | jq -r ".error") ^---^ SC2155 (warning): Declare and assign separately to avoid masking return values. ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: local error=$(echo "$show" | jq -r ".error") In devlink.sh line 437: local recover=`echo $show | jq -r ".recover"` ^-----^ SC2155 (warning): Declare and assign separately to avoid masking return values. ^-----------------------------^ SC2006 (style): Use $(...) notation instead of legacy backticks `...`. ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: local recover=$(echo "$show" | jq -r ".recover") In devlink.sh line 441: local grace_period=$(echo $show | jq -r ".grace_period") ^----------^ SC2155 (warning): Declare and assign separately to avoid masking return values. ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: local grace_period=$(echo "$show" | jq -r ".grace_period") In devlink.sh line 446: local auto_recover=$(echo $show | jq -r ".auto_recover") ^----------^ SC2155 (warning): Declare and assign separately to avoid masking return values. ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: local auto_recover=$(echo "$show" | jq -r ".auto_recover") In devlink.sh line 457: devlink health set $DL_HANDLE reporter dummy auto_recover false ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink health set "$DL_HANDLE" reporter dummy auto_recover false In devlink.sh line 463: echo "$BREAK_MSG"> $DEBUGFS_DIR/health/break_health ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: echo "$BREAK_MSG"> "$DEBUGFS_DIR"/health/break_health In devlink.sh line 468: local dump=$(devlink health dump show $DL_HANDLE reporter dummy -j) ^--^ SC2155 (warning): Declare and assign separately to avoid masking return values. ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: local dump=$(devlink health dump show "$DL_HANDLE" reporter dummy -j) In devlink.sh line 471: local dump_break_msg=$(echo $dump | jq -r ".break_message") ^------------^ SC2155 (warning): Declare and assign separately to avoid masking return values. ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: local dump_break_msg=$(echo "$dump" | jq -r ".break_message") In devlink.sh line 475: devlink health dump clear $DL_HANDLE reporter dummy ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink health dump clear "$DL_HANDLE" reporter dummy In devlink.sh line 478: devlink health recover $DL_HANDLE reporter dummy ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink health recover "$DL_HANDLE" reporter dummy In devlink.sh line 483: devlink health set $DL_HANDLE reporter dummy auto_recover true ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink health set "$DL_HANDLE" reporter dummy auto_recover true In devlink.sh line 488: echo "$BREAK_MSG"> $DEBUGFS_DIR/health/break_health ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: echo "$BREAK_MSG"> "$DEBUGFS_DIR"/health/break_health In devlink.sh line 493: local diagnose=$(devlink health diagnose $DL_HANDLE reporter dummy -j -p) ^------^ SC2155 (warning): Declare and assign separately to avoid masking return values. ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: local diagnose=$(devlink health diagnose "$DL_HANDLE" reporter dummy -j -p) In devlink.sh line 496: local rcvrd_break_msg=$(echo $diagnose | jq -r ".recovered_break_message") ^-------------^ SC2155 (warning): Declare and assign separately to avoid masking return values. ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: local rcvrd_break_msg=$(echo "$diagnose" | jq -r ".recovered_break_message") In devlink.sh line 500: devlink health set $DL_HANDLE reporter dummy grace_period 10 ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink health set "$DL_HANDLE" reporter dummy grace_period 10 In devlink.sh line 505: echo "Y"> $DEBUGFS_DIR/health/fail_recover ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: echo "Y"> "$DEBUGFS_DIR"/health/fail_recover In devlink.sh line 508: echo "$BREAK_MSG"> $DEBUGFS_DIR/health/break_health ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: echo "$BREAK_MSG"> "$DEBUGFS_DIR"/health/break_health In devlink.sh line 513: devlink health recover $DL_HANDLE reporter dummy ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink health recover "$DL_HANDLE" reporter dummy In devlink.sh line 516: echo "N"> $DEBUGFS_DIR/health/fail_recover ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: echo "N"> "$DEBUGFS_DIR"/health/fail_recover In devlink.sh line 519: devlink health recover $DL_HANDLE reporter dummy ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink health recover "$DL_HANDLE" reporter dummy In devlink.sh line 524: echo 8192 > $DEBUGFS_DIR/health/binary_len ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: echo 8192 > "$DEBUGFS_DIR"/health/binary_len In devlink.sh line 527: local dump=$(devlink health dump show $DL_HANDLE reporter dummy -j) ^--^ SC2155 (warning): Declare and assign separately to avoid masking return values. ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: local dump=$(devlink health dump show "$DL_HANDLE" reporter dummy -j) In devlink.sh line 530: devlink health dump clear $DL_HANDLE reporter dummy ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink health dump clear "$DL_HANDLE" reporter dummy In devlink.sh line 541: '.[] | to_entries | .[] | select(.value.type == "leaf") | .key | select(contains("'$handle'"))' ^-----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: '.[] | to_entries | .[] | select(.value.type == "leaf") | .key | select(contains("'"$handle"'"))' In devlink.sh line 549: '.[] | to_entries | .[] | select(.value.type == "node") | .key | select(contains("'$handle'"))' ^-----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: '.[] | to_entries | .[] | select(.value.type == "node") | .key | select(contains("'"$handle"'"))' In devlink.sh line 559: devlink port function rate set $handle $name $value$units ^-----^ SC2086 (info): Double quote to prevent globbing and word splitting. ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink port function rate set "$handle" "$name" "$value""$units" In devlink.sh line 567: cmd_jq "devlink port function rate show $handle -j" '.[][].'$name ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: cmd_jq "devlink port function rate show $handle -j" '.[][].'"$name" In devlink.sh line 577: rate_attr_set $handle $name $rate mbit ^-----^ SC2086 (info): Double quote to prevent globbing and word splitting. ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: rate_attr_set "$handle" "$name" "$rate" mbit In devlink.sh line 580: local debug_value=$(cat $debug_file) ^---------^ SC2155 (warning): Declare and assign separately to avoid masking return values. ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: local debug_value=$(cat "$debug_file") In devlink.sh line 585: local api_value=$(( $(rate_attr_get $handle $name) * 8 / 1000000 )) ^-----^ SC2086 (info): Double quote to prevent globbing and word splitting. ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: local api_value=$(( $(rate_attr_get "$handle" "$name") * 8 / 1000000 )) In devlink.sh line 597: rate_attr_set $handle parent $parent ^-----^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: rate_attr_set "$handle" parent "$parent" In devlink.sh line 600: debug_value=$(cat $debug_file) ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: debug_value=$(cat "$debug_file") In devlink.sh line 605: api_value=$(rate_attr_get $r_obj parent) ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: api_value=$(rate_attr_get "$r_obj" parent) In devlink.sh line 655: devlink port function rate add $handle ^-----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink port function rate add "$handle" In devlink.sh line 662: devlink port function rate del $handle ^-----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink port function rate del "$handle" In devlink.sh line 667: RET=0 ^-^ SC2034 (warning): RET appears unused. Verify use (or export if used externally). In devlink.sh line 669: echo $VF_COUNT > /sys/bus/netdevsim/devices/$DEV_NAME/sriov_numvfs ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: echo "$VF_COUNT" > /sys/bus/netdevsim/devices/"$DEV_NAME"/sriov_numvfs In devlink.sh line 670: devlink dev eswitch set $DL_HANDLE mode switchdev ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink dev eswitch set "$DL_HANDLE" mode switchdev In devlink.sh line 671: local leafs=`rate_leafs_get $DL_HANDLE` ^---^ SC2155 (warning): Declare and assign separately to avoid masking return values. ^-------------------------^ SC2006 (style): Use $(...) notation instead of legacy backticks `...`. ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: local leafs=$(rate_leafs_get "$DL_HANDLE") In devlink.sh line 672: local num_leafs=`echo $leafs | wc -w` ^-------^ SC2155 (warning): Declare and assign separately to avoid masking return values. ^-------------------^ SC2006 (style): Use $(...) notation instead of legacy backticks `...`. ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: local num_leafs=$(echo "$leafs" | wc -w) In devlink.sh line 679: rate_attr_tx_rate_check $r_obj tx_share $rate \ ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: rate_attr_tx_rate_check "$r_obj" tx_share "$rate" \ In devlink.sh line 680: $DEBUGFS_DIR/ports/${r_obj##*/}/tx_share ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: "$DEBUGFS_DIR"/ports/"${r_obj##*/}"/tx_share In devlink.sh line 681: rate=$(($rate+10)) ^---^ SC2004 (style): $/${} is unnecessary on arithmetic variables. In devlink.sh line 687: rate_attr_tx_rate_check $r_obj tx_max $rate \ ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: rate_attr_tx_rate_check "$r_obj" tx_max "$rate" \ In devlink.sh line 688: $DEBUGFS_DIR/ports/${r_obj##*/}/tx_max ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: "$DEBUGFS_DIR"/ports/"${r_obj##*/}"/tx_max In devlink.sh line 689: rate=$(($rate+100)) ^---^ SC2004 (style): $/${} is unnecessary on arithmetic variables. In devlink.sh line 704: local num_nodes=`rate_nodes_get $DL_HANDLE | wc -w` ^-------^ SC2155 (warning): Declare and assign separately to avoid masking return values. ^-- SC2006 (style): Use $(...) notation instead of legacy backticks `...`. ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: local num_nodes=$(rate_nodes_get "$DL_HANDLE" | wc -w) In devlink.sh line 705: [ $num_nodes == 1 ] ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: [ "$num_nodes" == 1 ] In devlink.sh line 709: rate_attr_tx_rate_check $node1 tx_share $node_tx_share \ ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. ^------------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: rate_attr_tx_rate_check "$node1" tx_share "$node_tx_share" \ In devlink.sh line 710: $DEBUGFS_DIR/rate_nodes/${node1##*/}/tx_share ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: "$DEBUGFS_DIR"/rate_nodes/"${node1##*/}"/tx_share In devlink.sh line 713: rate_attr_tx_rate_check $node1 tx_max $node_tx_max \ ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: rate_attr_tx_rate_check "$node1" tx_max "$node_tx_max" \ In devlink.sh line 714: $DEBUGFS_DIR/rate_nodes/${node1##*/}/tx_max ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: "$DEBUGFS_DIR"/rate_nodes/"${node1##*/}"/tx_max In devlink.sh line 718: rate_attr_tc_bw_check $node1 "$tc_bw" \ ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: rate_attr_tc_bw_check "$node1" "$tc_bw" \ In devlink.sh line 724: local num_nodes=`rate_nodes_get $DL_HANDLE | wc -w` ^-------^ SC2155 (warning): Declare and assign separately to avoid masking return values. ^-- SC2006 (style): Use $(...) notation instead of legacy backticks `...`. ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: local num_nodes=$(rate_nodes_get "$DL_HANDLE" | wc -w) In devlink.sh line 725: [ $num_nodes == 0 ] ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: [ "$num_nodes" == 0 ] In devlink.sh line 733: rate_attr_parent_check $r_obj $node1_name \ ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: rate_attr_parent_check "$r_obj" "$node1_name" \ In devlink.sh line 734: $DEBUGFS_DIR/ports/${r_obj##*/}/rate_parent ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: "$DEBUGFS_DIR"/ports/"${r_obj##*/}"/rate_parent In devlink.sh line 741: rate_attr_parent_check $node2 $node1_name \ ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: rate_attr_parent_check "$node2" "$node1_name" \ In devlink.sh line 742: $DEBUGFS_DIR/rate_nodes/$node2_name/rate_parent ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: "$DEBUGFS_DIR"/rate_nodes/"$node2_name"/rate_parent In devlink.sh line 773: exit $EXIT_STATUS ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: exit "$EXIT_STATUS" For more information: https://www.shellcheck.net/wiki/SC2034 -- ALL_TESTS appears unused. Verify ... https://www.shellcheck.net/wiki/SC2155 -- Declare and assign separately to ... https://www.shellcheck.net/wiki/SC1091 -- Not following: ./lib.sh: openBina... ====== Checking the tree with the patch ====== Checking tools/testing/selftests/drivers/net/netdevsim/devlink.sh - f1444de82439af96e37a8691454de2b2a7f6ecedf0f4a3b16dfb249a22e93677 In devlink.sh line 4: lib_dir=$(dirname $0)/../../../net/forwarding ^-- SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: lib_dir=$(dirname "$0")/../../../net/forwarding In devlink.sh line 6: ALL_TESTS="fw_flash_test params_test regions_test reload_test \ ^-------^ SC2034 (warning): ALL_TESTS appears unused. Verify use (or export if used externally). In devlink.sh line 9: NUM_NETIFS=0 ^--------^ SC2034 (warning): NUM_NETIFS appears unused. Verify use (or export if used externally). In devlink.sh line 10: source $lib_dir/lib.sh ^-------------^ SC1091 (info): Not following: ./lib.sh: openBinaryFile: does not exist (No such file or directory) ^------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: source "$lib_dir"/lib.sh In devlink.sh line 22: "$@" | grep -q $DL_HANDLE ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: "$@" | grep -q "$DL_HANDLE" In devlink.sh line 43: echo "1024"> $DEBUGFS_DIR/fw_update_flash_size ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: echo "1024"> "$DEBUGFS_DIR"/fw_update_flash_size In devlink.sh line 44: echo "128"> $DEBUGFS_DIR/fw_update_flash_chunk_size ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: echo "128"> "$DEBUGFS_DIR"/fw_update_flash_chunk_size In devlink.sh line 45: echo "10"> $DEBUGFS_DIR/fw_update_flash_chunk_time_ms ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: echo "10"> "$DEBUGFS_DIR"/fw_update_flash_chunk_time_ms In devlink.sh line 47: devlink dev flash $DL_HANDLE file $DUMMYFILE ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink dev flash "$DL_HANDLE" file "$DUMMYFILE" In devlink.sh line 50: devlink dev flash $DL_HANDLE file $DUMMYFILE component fw.mgmt ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink dev flash "$DL_HANDLE" file "$DUMMYFILE" component fw.mgmt In devlink.sh line 53: devlink dev flash $DL_HANDLE file $DUMMYFILE overwrite settings ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink dev flash "$DL_HANDLE" file "$DUMMYFILE" overwrite settings In devlink.sh line 56: echo "1"> $DEBUGFS_DIR/fw_update_overwrite_mask ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: echo "1"> "$DEBUGFS_DIR"/fw_update_overwrite_mask In devlink.sh line 59: devlink dev flash $DL_HANDLE file $DUMMYFILE overwrite settings ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink dev flash "$DL_HANDLE" file "$DUMMYFILE" overwrite settings In devlink.sh line 62: devlink dev flash $DL_HANDLE file $DUMMYFILE overwrite identifiers ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink dev flash "$DL_HANDLE" file "$DUMMYFILE" overwrite identifiers In devlink.sh line 65: echo "3"> $DEBUGFS_DIR/fw_update_overwrite_mask ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: echo "3"> "$DEBUGFS_DIR"/fw_update_overwrite_mask In devlink.sh line 68: devlink dev flash $DL_HANDLE file $DUMMYFILE overwrite identifiers overwrite settings ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink dev flash "$DL_HANDLE" file "$DUMMYFILE" overwrite identifiers overwrite settings In devlink.sh line 71: echo "n"> $DEBUGFS_DIR/fw_update_status ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: echo "n"> "$DEBUGFS_DIR"/fw_update_status In devlink.sh line 74: devlink dev flash $DL_HANDLE file $DUMMYFILE ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink dev flash "$DL_HANDLE" file "$DUMMYFILE" In devlink.sh line 93: devlink dev param set $DL_HANDLE name $name cmode driverinit value $value ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink dev param set "$DL_HANDLE" name "$name" cmode driverinit value "$value" In devlink.sh line 104: value=$(param_get $name) ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: value=$(param_get "$name") In devlink.sh line 108: value=$(<$DEBUGFS_DIR/$name) ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: value=$(<"$DEBUGFS_DIR"/"$name") In devlink.sh line 118: local max_macs ^------^ SC2034 (warning): max_macs appears unused. Verify use (or export if used externally). In devlink.sh line 119: local test1 ^---^ SC2034 (warning): test1 appears unused. Verify use (or export if used externally). In devlink.sh line 132: devlink dev reload $DL_HANDLE ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink dev reload "$DL_HANDLE" In devlink.sh line 145: size=$(devlink region show $DL_HANDLE/$name -j | jq -e -r '.[][].size') ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: size=$(devlink region show "$DL_HANDLE"/"$name" -j | jq -e -r '.[][].size') In devlink.sh line 147: [ $size -eq 32768 ] ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: [ "$size" -eq 32768 ] In devlink.sh line 158: count=$(devlink region show $DL_HANDLE/$name -j | jq -e -r '.[][].snapshot | length') ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: count=$(devlink region show "$DL_HANDLE"/"$name" -j | jq -e -r '.[][].snapshot | length') In devlink.sh line 159: [ $count -eq $expected_count ] ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-------------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: [ "$count" -eq "$expected_count" ] In devlink.sh line 172: echo ""> $DEBUGFS_DIR/take_snapshot ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: echo ""> "$DEBUGFS_DIR"/take_snapshot In devlink.sh line 176: echo ""> $DEBUGFS_DIR/take_snapshot ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: echo ""> "$DEBUGFS_DIR"/take_snapshot In devlink.sh line 180: echo ""> $DEBUGFS_DIR/take_snapshot ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: echo ""> "$DEBUGFS_DIR"/take_snapshot In devlink.sh line 184: devlink region del $DL_HANDLE/dummy snapshot 1 ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink region del "$DL_HANDLE"/dummy snapshot 1 In devlink.sh line 189: devlink region new $DL_HANDLE/dummy snapshot 25 ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink region new "$DL_HANDLE"/dummy snapshot 25 In devlink.sh line 194: devlink region dump $DL_HANDLE/dummy snapshot 25 >> /dev/null ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink region dump "$DL_HANDLE"/dummy snapshot 25 >> /dev/null In devlink.sh line 197: devlink region read $DL_HANDLE/dummy snapshot 25 addr 0 len 1 >> /dev/null ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink region read "$DL_HANDLE"/dummy snapshot 25 addr 0 len 1 >> /dev/null In devlink.sh line 200: devlink region read $DL_HANDLE/dummy snapshot 25 addr 128 len 128 >> /dev/null ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink region read "$DL_HANDLE"/dummy snapshot 25 addr 128 len 128 >> /dev/null In devlink.sh line 203: devlink region read $DL_HANDLE/dummy snapshot 25 addr 128 len $((1<<32)) >> /dev/null ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink region read "$DL_HANDLE"/dummy snapshot 25 addr 128 len $((1<<32)) >> /dev/null In devlink.sh line 206: devlink region read $DL_HANDLE/dummy snapshot 25 addr $((1<<32)) len 128 >> /dev/null 2>&1 ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink region read "$DL_HANDLE"/dummy snapshot 25 addr $((1<<32)) len 128 >> /dev/null 2>&1 In devlink.sh line 209: devlink region del $DL_HANDLE/dummy snapshot 25 ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink region del "$DL_HANDLE"/dummy snapshot 25 In devlink.sh line 214: sid=$(devlink -j region new $DL_HANDLE/dummy | jq '.[][][][]') ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: sid=$(devlink -j region new "$DL_HANDLE"/dummy | jq '.[][][][]') In devlink.sh line 219: devlink region dump $DL_HANDLE/dummy snapshot $sid >> /dev/null ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink region dump "$DL_HANDLE"/dummy snapshot "$sid" >> /dev/null In devlink.sh line 222: devlink region del $DL_HANDLE/dummy snapshot $sid ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^--^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink region del "$DL_HANDLE"/dummy snapshot "$sid" In devlink.sh line 234: devlink dev reload $DL_HANDLE ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink dev reload "$DL_HANDLE" In devlink.sh line 237: echo "y"> $DEBUGFS_DIR/fail_reload ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: echo "y"> "$DEBUGFS_DIR"/fail_reload In devlink.sh line 240: devlink dev reload $DL_HANDLE ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink dev reload "$DL_HANDLE" In devlink.sh line 243: echo "n"> $DEBUGFS_DIR/fail_reload ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: echo "n"> "$DEBUGFS_DIR"/fail_reload In devlink.sh line 246: devlink dev reload $DL_HANDLE ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink dev reload "$DL_HANDLE" In devlink.sh line 249: echo "y"> $DEBUGFS_DIR/dont_allow_reload ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: echo "y"> "$DEBUGFS_DIR"/dont_allow_reload In devlink.sh line 252: devlink dev reload $DL_HANDLE ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink dev reload "$DL_HANDLE" In devlink.sh line 255: echo "n"> $DEBUGFS_DIR/dont_allow_reload ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: echo "n"> "$DEBUGFS_DIR"/dont_allow_reload In devlink.sh line 258: devlink dev reload $DL_HANDLE ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink dev reload "$DL_HANDLE" In devlink.sh line 273: devlink dev reload $DL_HANDLE netns testns1 ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink dev reload "$DL_HANDLE" netns testns1 In devlink.sh line 276: devlink -N testns1 dev reload $DL_HANDLE netns testns2 ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink -N testns1 dev reload "$DL_HANDLE" netns testns2 In devlink.sh line 311: devlink dev reload $DL_HANDLE netns testns1 ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink dev reload "$DL_HANDLE" netns testns1 In devlink.sh line 316: ip -n testns1 link add name $DUMMYDEV type dummy ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -n testns1 link add name "$DUMMYDEV" type dummy In devlink.sh line 318: ip -n testns1 link set $DUMMYDEV up ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -n testns1 link set "$DUMMYDEV" up In devlink.sh line 320: ip -n testns1 a a 192.0.1.1/24 dev $DUMMYDEV ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -n testns1 a a 192.0.1.1/24 dev "$DUMMYDEV" In devlink.sh line 323: local occ=$(res_val_get testns1 IPv4 fib occ) ^-^ SC2155 (warning): Declare and assign separately to avoid masking return values. In devlink.sh line 328: devlink -N testns1 resource set $DL_HANDLE path IPv4/fib size $limit ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink -N testns1 resource set "$DL_HANDLE" path IPv4/fib size "$limit" In devlink.sh line 330: local size_new=$(res_val_get testns1 IPv4 fib size_new) ^------^ SC2155 (warning): Declare and assign separately to avoid masking return values. In devlink.sh line 334: devlink -N testns1 dev reload $DL_HANDLE ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink -N testns1 dev reload "$DL_HANDLE" In devlink.sh line 336: local size=$(res_val_get testns1 IPv4 fib size) ^--^ SC2155 (warning): Declare and assign separately to avoid masking return values. In devlink.sh line 354: ip -n testns2 link add name $DUMMYDEV type dummy ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -n testns2 link add name "$DUMMYDEV" type dummy In devlink.sh line 356: ip -n testns2 link set $DUMMYDEV up ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -n testns2 link set "$DUMMYDEV" up In devlink.sh line 358: ip -n testns2 a a 192.0.1.1/24 dev $DUMMYDEV ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: ip -n testns2 a a 192.0.1.1/24 dev "$DUMMYDEV" In devlink.sh line 365: devlink -N testns1 dev reload $DL_HANDLE netns testns2 ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink -N testns1 dev reload "$DL_HANDLE" netns testns2 In devlink.sh line 368: devlink -N testns2 resource set $DL_HANDLE path IPv4/fib size ' -1' ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink -N testns2 resource set "$DL_HANDLE" path IPv4/fib size ' -1' In devlink.sh line 371: devlink -N testns2 dev reload $DL_HANDLE netns 1 ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink -N testns2 dev reload "$DL_HANDLE" netns 1 In devlink.sh line 406: devlink health show $DL_HANDLE reporter empty >/dev/null ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink health show "$DL_HANDLE" reporter empty >/dev/null In devlink.sh line 409: devlink health dump show $DL_HANDLE reporter empty >/dev/null ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink health dump show "$DL_HANDLE" reporter empty >/dev/null In devlink.sh line 412: devlink health diagnose $DL_HANDLE reporter empty >/dev/null ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink health diagnose "$DL_HANDLE" reporter empty >/dev/null In devlink.sh line 415: devlink health recover $DL_HANDLE reporter empty ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink health recover "$DL_HANDLE" reporter empty In devlink.sh line 430: local show=$(devlink health show $DL_HANDLE reporter $name -j | jq -e -r ".[][][]") ^--^ SC2155 (warning): Declare and assign separately to avoid masking return values. ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: local show=$(devlink health show "$DL_HANDLE" reporter "$name" -j | jq -e -r ".[][][]") In devlink.sh line 433: local state=$(echo $show | jq -r ".state") ^---^ SC2155 (warning): Declare and assign separately to avoid masking return values. ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: local state=$(echo "$show" | jq -r ".state") In devlink.sh line 437: local error=$(echo $show | jq -r ".error") ^---^ SC2155 (warning): Declare and assign separately to avoid masking return values. ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: local error=$(echo "$show" | jq -r ".error") In devlink.sh line 441: local recover=`echo $show | jq -r ".recover"` ^-----^ SC2155 (warning): Declare and assign separately to avoid masking return values. ^-----------------------------^ SC2006 (style): Use $(...) notation instead of legacy backticks `...`. ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: local recover=$(echo "$show" | jq -r ".recover") In devlink.sh line 445: local grace_period=$(echo $show | jq -r ".grace_period") ^----------^ SC2155 (warning): Declare and assign separately to avoid masking return values. ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: local grace_period=$(echo "$show" | jq -r ".grace_period") In devlink.sh line 450: local auto_recover=$(echo $show | jq -r ".auto_recover") ^----------^ SC2155 (warning): Declare and assign separately to avoid masking return values. ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: local auto_recover=$(echo "$show" | jq -r ".auto_recover") In devlink.sh line 461: devlink health set $DL_HANDLE reporter dummy auto_recover false ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink health set "$DL_HANDLE" reporter dummy auto_recover false In devlink.sh line 467: echo "$BREAK_MSG"> $DEBUGFS_DIR/health/break_health ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: echo "$BREAK_MSG"> "$DEBUGFS_DIR"/health/break_health In devlink.sh line 472: local dump=$(devlink health dump show $DL_HANDLE reporter dummy -j) ^--^ SC2155 (warning): Declare and assign separately to avoid masking return values. ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: local dump=$(devlink health dump show "$DL_HANDLE" reporter dummy -j) In devlink.sh line 475: local dump_break_msg=$(echo $dump | jq -r ".break_message") ^------------^ SC2155 (warning): Declare and assign separately to avoid masking return values. ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: local dump_break_msg=$(echo "$dump" | jq -r ".break_message") In devlink.sh line 479: devlink health dump clear $DL_HANDLE reporter dummy ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink health dump clear "$DL_HANDLE" reporter dummy In devlink.sh line 482: devlink health recover $DL_HANDLE reporter dummy ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink health recover "$DL_HANDLE" reporter dummy In devlink.sh line 487: devlink health set $DL_HANDLE reporter dummy auto_recover true ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink health set "$DL_HANDLE" reporter dummy auto_recover true In devlink.sh line 492: echo "$BREAK_MSG"> $DEBUGFS_DIR/health/break_health ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: echo "$BREAK_MSG"> "$DEBUGFS_DIR"/health/break_health In devlink.sh line 497: local diagnose=$(devlink health diagnose $DL_HANDLE reporter dummy -j -p) ^------^ SC2155 (warning): Declare and assign separately to avoid masking return values. ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: local diagnose=$(devlink health diagnose "$DL_HANDLE" reporter dummy -j -p) In devlink.sh line 500: local rcvrd_break_msg=$(echo $diagnose | jq -r ".recovered_break_message") ^-------------^ SC2155 (warning): Declare and assign separately to avoid masking return values. ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: local rcvrd_break_msg=$(echo "$diagnose" | jq -r ".recovered_break_message") In devlink.sh line 504: devlink health set $DL_HANDLE reporter dummy grace_period 10 ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink health set "$DL_HANDLE" reporter dummy grace_period 10 In devlink.sh line 509: echo "Y"> $DEBUGFS_DIR/health/fail_recover ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: echo "Y"> "$DEBUGFS_DIR"/health/fail_recover In devlink.sh line 512: echo "$BREAK_MSG"> $DEBUGFS_DIR/health/break_health ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: echo "$BREAK_MSG"> "$DEBUGFS_DIR"/health/break_health In devlink.sh line 517: devlink health recover $DL_HANDLE reporter dummy ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink health recover "$DL_HANDLE" reporter dummy In devlink.sh line 520: echo "N"> $DEBUGFS_DIR/health/fail_recover ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: echo "N"> "$DEBUGFS_DIR"/health/fail_recover In devlink.sh line 523: devlink health recover $DL_HANDLE reporter dummy ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink health recover "$DL_HANDLE" reporter dummy In devlink.sh line 528: echo 8192 > $DEBUGFS_DIR/health/binary_len ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: echo 8192 > "$DEBUGFS_DIR"/health/binary_len In devlink.sh line 531: local dump=$(devlink health dump show $DL_HANDLE reporter dummy -j) ^--^ SC2155 (warning): Declare and assign separately to avoid masking return values. ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: local dump=$(devlink health dump show "$DL_HANDLE" reporter dummy -j) In devlink.sh line 534: devlink health dump clear $DL_HANDLE reporter dummy ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink health dump clear "$DL_HANDLE" reporter dummy In devlink.sh line 545: '.[] | to_entries | .[] | select(.value.type == "leaf") | .key | select(contains("'$handle'"))' ^-----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: '.[] | to_entries | .[] | select(.value.type == "leaf") | .key | select(contains("'"$handle"'"))' In devlink.sh line 553: '.[] | to_entries | .[] | select(.value.type == "node") | .key | select(contains("'$handle'"))' ^-----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: '.[] | to_entries | .[] | select(.value.type == "node") | .key | select(contains("'"$handle"'"))' In devlink.sh line 563: devlink port function rate set $handle $name $value$units ^-----^ SC2086 (info): Double quote to prevent globbing and word splitting. ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink port function rate set "$handle" "$name" "$value""$units" In devlink.sh line 571: cmd_jq "devlink port function rate show $handle -j" '.[][].'$name ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: cmd_jq "devlink port function rate show $handle -j" '.[][].'"$name" In devlink.sh line 581: rate_attr_set $handle $name $rate mbit ^-----^ SC2086 (info): Double quote to prevent globbing and word splitting. ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: rate_attr_set "$handle" "$name" "$rate" mbit In devlink.sh line 584: local debug_value=$(cat $debug_file) ^---------^ SC2155 (warning): Declare and assign separately to avoid masking return values. ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: local debug_value=$(cat "$debug_file") In devlink.sh line 589: local api_value=$(( $(rate_attr_get $handle $name) * 8 / 1000000 )) ^-----^ SC2086 (info): Double quote to prevent globbing and word splitting. ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: local api_value=$(( $(rate_attr_get "$handle" "$name") * 8 / 1000000 )) In devlink.sh line 601: rate_attr_set $handle parent $parent ^-----^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: rate_attr_set "$handle" parent "$parent" In devlink.sh line 604: debug_value=$(cat $debug_file) ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: debug_value=$(cat "$debug_file") In devlink.sh line 609: api_value=$(rate_attr_get $r_obj parent) ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: api_value=$(rate_attr_get "$r_obj" parent) In devlink.sh line 659: devlink port function rate add $handle ^-----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink port function rate add "$handle" In devlink.sh line 666: devlink port function rate del $handle ^-----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink port function rate del "$handle" In devlink.sh line 671: RET=0 ^-^ SC2034 (warning): RET appears unused. Verify use (or export if used externally). In devlink.sh line 673: echo $VF_COUNT > /sys/bus/netdevsim/devices/$DEV_NAME/sriov_numvfs ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^-------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: echo "$VF_COUNT" > /sys/bus/netdevsim/devices/"$DEV_NAME"/sriov_numvfs In devlink.sh line 674: devlink dev eswitch set $DL_HANDLE mode switchdev ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: devlink dev eswitch set "$DL_HANDLE" mode switchdev In devlink.sh line 675: local leafs=`rate_leafs_get $DL_HANDLE` ^---^ SC2155 (warning): Declare and assign separately to avoid masking return values. ^-------------------------^ SC2006 (style): Use $(...) notation instead of legacy backticks `...`. ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: local leafs=$(rate_leafs_get "$DL_HANDLE") In devlink.sh line 676: local num_leafs=`echo $leafs | wc -w` ^-------^ SC2155 (warning): Declare and assign separately to avoid masking return values. ^-------------------^ SC2006 (style): Use $(...) notation instead of legacy backticks `...`. ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: local num_leafs=$(echo "$leafs" | wc -w) In devlink.sh line 683: rate_attr_tx_rate_check $r_obj tx_share $rate \ ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: rate_attr_tx_rate_check "$r_obj" tx_share "$rate" \ In devlink.sh line 684: $DEBUGFS_DIR/ports/${r_obj##*/}/tx_share ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: "$DEBUGFS_DIR"/ports/"${r_obj##*/}"/tx_share In devlink.sh line 685: rate=$(($rate+10)) ^---^ SC2004 (style): $/${} is unnecessary on arithmetic variables. In devlink.sh line 691: rate_attr_tx_rate_check $r_obj tx_max $rate \ ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. ^---^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: rate_attr_tx_rate_check "$r_obj" tx_max "$rate" \ In devlink.sh line 692: $DEBUGFS_DIR/ports/${r_obj##*/}/tx_max ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: "$DEBUGFS_DIR"/ports/"${r_obj##*/}"/tx_max In devlink.sh line 693: rate=$(($rate+100)) ^---^ SC2004 (style): $/${} is unnecessary on arithmetic variables. In devlink.sh line 708: local num_nodes=`rate_nodes_get $DL_HANDLE | wc -w` ^-------^ SC2155 (warning): Declare and assign separately to avoid masking return values. ^-- SC2006 (style): Use $(...) notation instead of legacy backticks `...`. ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: local num_nodes=$(rate_nodes_get "$DL_HANDLE" | wc -w) In devlink.sh line 709: [ $num_nodes == 1 ] ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: [ "$num_nodes" == 1 ] In devlink.sh line 713: rate_attr_tx_rate_check $node1 tx_share $node_tx_share \ ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. ^------------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: rate_attr_tx_rate_check "$node1" tx_share "$node_tx_share" \ In devlink.sh line 714: $DEBUGFS_DIR/rate_nodes/${node1##*/}/tx_share ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: "$DEBUGFS_DIR"/rate_nodes/"${node1##*/}"/tx_share In devlink.sh line 717: rate_attr_tx_rate_check $node1 tx_max $node_tx_max \ ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: rate_attr_tx_rate_check "$node1" tx_max "$node_tx_max" \ In devlink.sh line 718: $DEBUGFS_DIR/rate_nodes/${node1##*/}/tx_max ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: "$DEBUGFS_DIR"/rate_nodes/"${node1##*/}"/tx_max In devlink.sh line 722: rate_attr_tc_bw_check $node1 "$tc_bw" \ ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: rate_attr_tc_bw_check "$node1" "$tc_bw" \ In devlink.sh line 728: local num_nodes=`rate_nodes_get $DL_HANDLE | wc -w` ^-------^ SC2155 (warning): Declare and assign separately to avoid masking return values. ^-- SC2006 (style): Use $(...) notation instead of legacy backticks `...`. ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: local num_nodes=$(rate_nodes_get "$DL_HANDLE" | wc -w) In devlink.sh line 729: [ $num_nodes == 0 ] ^--------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: [ "$num_nodes" == 0 ] In devlink.sh line 737: rate_attr_parent_check $r_obj $node1_name \ ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: rate_attr_parent_check "$r_obj" "$node1_name" \ In devlink.sh line 738: $DEBUGFS_DIR/ports/${r_obj##*/}/rate_parent ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: "$DEBUGFS_DIR"/ports/"${r_obj##*/}"/rate_parent In devlink.sh line 745: rate_attr_parent_check $node2 $node1_name \ ^----^ SC2086 (info): Double quote to prevent globbing and word splitting. ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: rate_attr_parent_check "$node2" "$node1_name" \ In devlink.sh line 746: $DEBUGFS_DIR/rate_nodes/$node2_name/rate_parent ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. ^---------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: "$DEBUGFS_DIR"/rate_nodes/"$node2_name"/rate_parent In devlink.sh line 777: exit $EXIT_STATUS ^----------^ SC2086 (info): Double quote to prevent globbing and word splitting. Did you mean: exit "$EXIT_STATUS" For more information: https://www.shellcheck.net/wiki/SC2034 -- ALL_TESTS appears unused. Verify ... https://www.shellcheck.net/wiki/SC2155 -- Declare and assign separately to ... https://www.shellcheck.net/wiki/SC1091 -- Not following: ./lib.sh: openBina...