Which test actually failed in this "unsuccessful run"?

Asked by Gábor Lehel on 2019-08-16

At the end of a particular run, stress-ng printed "unsuccessful run completed in 6109.56s", and returned exit code 2, but there was no "fail:" message anywhere prior to that. How can I determine which test actually failed?

The command line was: stress-ng --timestamp --verbose --verify --metrics brief --times --tz --sequential 0 --exclude efivar,resources --timeout 30 --copy-file-bytes 512M --fallocate-bytes 512M --fiemap-bytes 512M --hdd-bytes 512M --iomix-bytes 512M --msync-bytes 512M --readahead-bytes 512M --revio-bytes 512M --sync-file-bytes 512M

I've uploaded the command output here: https://gist.github.com/glaebhoerl/130b0a4111fba0d6b7222d358b905f1f

Using stress-ng-0.10

Question information

English Edit question
Ubuntu stress-ng Edit question
No assignee Edit question
Solved by:
Gábor Lehel
Last query:
Last reply:
Gábor Lehel (glaebhoerl) said : #1

Ah, after spelunking through the source code it seems the "fail:" messages output by pr_fail() are logically independent from the "bool *success" flag which is checked for the exit code and for whether to print "successful" or "unsuccessful", which is in turn determined by whether any subprocesses were killed by a non-OOM-killer signal.

(So in the log I pasted, it was stress-ng-stack which produced the failure.)

Might be an idea to print the "terminated on signal" message using pr_fail() in the case where it wasn't possibly-OOM-related, or is this not-done on purpose?