Commit 2cab1598 authored by Michal Berger's avatar Michal Berger Committed by Tomasz Zawadzki
Browse files

test/fuzz/llvm: Add support for sending fuzzer output to syslog



The long variant of the llvm fuzzer test is producing ~30GB of output
data. Since this may put the underlying system under a severe stress,
depending on how its storage is set up, add an alternative for the
data destination.

Change-Id: I3a4c0efa8df3919642a531bcbe73c5a3daaa97e0
Signed-off-by: default avatarMichal Berger <michal.berger@intel.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/21110


Reviewed-by: default avatarTomasz Zawadzki <tomasz.zawadzki@intel.com>
Reviewed-by: default avatarKonrad Sztyber <konrad.sztyber@intel.com>
Reviewed-by: default avatarSebastian Brzezinka <sebastian.brzezinka@intel.com>
Tested-by: default avatarSPDK CI Jenkins <sys_sgci@intel.com>
parent 0cb477dd
Loading
Loading
Loading
Loading
+9 −1
Original line number Diff line number Diff line
@@ -13,6 +13,14 @@ function cleanup() {
	kill -9 "${pids[@]}" || :
}

function fuzzer_out_handler() {
	if [[ -n $SEND_LLVM_FUZZER_TO_SYSLOG ]]; then
		logger -p user.debug -t LLVM
	else
		cat > "$1"
	fi
}

function get_testn() {
	local fuzz_num=$1
	local mem_size=$2
@@ -44,7 +52,7 @@ function start_llvm_fuzz_all() {
		# Run max up to $testn tests in parallel ...
		while ((testn_idx = i + ++idx, testn_idx < fuzz_num && idx < testn)); do
			core=$(printf "0x%x" $((0x1 << idx)))
			start_llvm_fuzz $testn_idx $timen $core &> "$output_dir/llvm/llvm_${FUZZER}_${testn_idx}.txt" &
			start_llvm_fuzz $testn_idx $timen $core &> >(fuzzer_out_handler "$output_dir/llvm/llvm_${FUZZER}_${testn_idx}.txt") &
			pids+=($!)
		done
		# ... and now wait for them