Write to bench.out-tmp only once

Appending benchmark program output on every run could result in a case
where the benchmark run was cancelled, resulting in a partially
written file.  This file gets used again on the next run, resulting in
results being appended to old results.

It could have been possible to remove the file before every benchmark
run, but it is easier to just write the output to bench.out-tmp only
once.
This commit is contained in:
Siddhesh Poyarekar 2013-04-15 13:52:26 +05:30
parent 0582f6b3d6
commit 206a669911
2 changed files with 9 additions and 4 deletions

View file

@ -1,3 +1,8 @@
2013-04-15 Siddhesh Poyarekar <siddhesh@redhat.com>
* benchtests/Makefile (bench): Write all output to
bench-out.tmp together.
2013-04-15 Andreas Schwab <schwab@suse.de>
* nscd/nscd.c (main): Don't fork again after closing files.

View file

@ -121,10 +121,10 @@ run-bench = $(test-wrapper-env) \
$($*-ENV) $(rtld-prefix) $${run}
bench: $(binaries-bench)
for run in $^; do \
echo "Running $${run}"; \
$(run-bench) >> $(objpfx)bench.out-tmp; \
done; \
{ for run in $^; do \
echo "Running $${run}" >&2; \
$(run-bench); \
done; } > $(objpfx)bench.out-tmp; \
if [ -f $(objpfx)bench.out ]; then \
mv -f $(objpfx)bench.out $(objpfx)bench.out.old; \
fi; \