07968377b3
ecos: fix golden-run runtime conversion
...
BochsController::getTimerTicksPerSecond() only works reliably when the
simulation is already running (e.g., after a restore()). This broke
timeout conditions for the very first experiment in a FailBochs instance.
Change-Id: Ice5f0aa0c6759f2d9341ad4f21d5c346307b4c12
2014-04-27 19:04:05 +02:00
940fa6035d
ecos: record simulated runtime
...
As the eCos kernel tests do not sufficiently check for failures, a
(compared to the golden run) measurably *reduced* simulation time can be
used as an indication for SDC.
Change-Id: I303f6c3f7ef56cb691c1f226eff74d113dd16629
2014-04-03 14:45:46 +02:00
6e03753b6e
ecos: modifications for mibench benchmarks
...
Change-Id: Ifecbf24912dbffa814b189aed9336a5420ec6392
2014-02-25 13:32:56 +01:00
cbf9daea97
ecos: rewrite for DatabaseCampaign
...
+ modified resulttypes
Change-Id: I463759e66e7497c80eeee9a065fc95e058ec3dc1
2014-02-25 13:32:56 +01:00
4cb97a7fa5
formatting, typos, comments, details
...
Change-Id: Iae5f1acb653a694622e9ac2bad93efcfca588f3a
2014-01-22 13:08:13 +01:00
0a5e54e9aa
ecos_kernel_test experiment bugix: don't resume if 'experiment reached finish() before FI'
...
Change-Id: Id0bb9400b8aa28307ed385a8c32b91b17254ba1c
2014-01-15 12:52:44 +01:00
eccbc61b1d
ecos kernel test: memory access listeners' ranges (high/low) may be equal
...
Change-Id: I02f53d9d698a56c606ef354a37d7a3c467ec8127
2013-07-22 14:03:20 +02:00
955f89b3eb
ecos: make LOCAL builds compile again
...
Change-Id: Icd992aa20443426bbcaa507c39453d6ecb9174c0
2013-07-03 13:46:55 +02:00
01e7f8c8a1
ecos: bugfix: cyg_test_output may be called before FI
...
This is a pretty old bug that unfortunately affects both DSN 2013 and
SOBRES 2013 results.
Change-Id: I64a2790a4d55515a23a34d108be99646d5dd345d
2013-07-03 13:46:55 +02:00
66ecedd864
ecos: removed configuration checks
...
Change-Id: I5df0b5f3435f3f695ba1ab9ca624dfa238509e46
2013-07-03 13:46:55 +02:00
f3c36e70ef
ecos: stack-protection eval
...
Change-Id: I576c2ef3834f61bb9017af37541afc7639672782
2013-05-29 16:43:46 +02:00
091e8dcae0
ecos: baseline assessment integrated into main experiment
...
Change-Id: Iaf2a31c917b6ddd50568e5fb784ab8457193ee7d
2013-04-29 14:15:53 +02:00
403886e541
ecos: minor changes, cleanup
...
- Count experiments, not jobs
- Debug output
Change-Id: Ide5e1219cdcc8112d1a0d4e7367beca2dd5821ef
2013-04-29 14:15:51 +02:00
c0b36f6236
ecos: use new timer iface to record benchmark runtime
...
... instead of the previous TimerListener workaround.
Change-Id: I3e712540e93b668301f50ecf4f5a5760e0a8fdb3
2013-04-29 14:15:49 +02:00
0f16f18d75
cosmetics
...
Change-Id: Ifae805ae1e2dac95324e054af09a7b70f5d5b60c
2013-04-22 14:24:02 +02:00
2d45a2c52c
ecos: use MemoryMap materialization instead of own code
...
Change-Id: I8615a066c53e1d6a02c78bce3199fa1f73edfda9
2013-04-10 13:01:04 +02:00
d7a3a28431
ecos: split valid mem access range
...
When eCos is built as a multiboot binary, some of its data structures
are still at very low (<<1M) addresses, but the rest moves to
addresses >1M. This change makes sure our invalid mem access
detection is not overly generous.
Change-Id: If8265a407b3706a4ff71562b316e05aa22255f62
2013-04-09 13:16:13 +02:00
001d036613
ecos: ignore VGA mem accesses
...
Ignore VGA mem accesses for valid address range detection.
Change-Id: I4a85b6d4a2de52ecbd977d2dba474df818710600
2013-04-06 18:59:12 +02:00
a0293b9d18
ecos: use commandline parameters for local test runs, too
...
Change-Id: Iac43732408420a9e3687d5756c942c2f2256ad86
2013-04-03 15:18:08 +02:00
373c19dd68
ecos: store traceinfo.txt in correct location
...
This commit completes the change introduced in commit
59e5fd3169 .
Change-Id: I0a6ab7b35fbb69cbb8ef91e187b0d0bc32d01071
2013-04-03 15:18:08 +02:00
59e5fd3169
ecos: fail-client accepts commandline parameters for prerequisites phase
...
This allows us to generate prerequisites (traces, state snapshots, memory
maps) in parallel, and without the previous shell script hacks.
Change-Id: I05a0321a794b4033d05eed20f5bffbd1e910cf1b
2013-03-28 18:09:39 +01:00
4686c27d3d
ElfReader: Support for Section and Symbol size.
...
- getSection/getSymbol now returns an ElfSymbol reference.
Searching by address now searches if address is within
symbol address and symbol address + size.
So we can test, if we are *within* a function, object or
section and not only at the start address.
2013-03-04 15:18:52 +01:00
b996617a97
ecos_kernel_test: improved dependency check
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@2074 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2013-02-07 10:43:03 +00:00
5f2364e1a2
ecos_kernel_test: updates due to architecture changes (ElfReader still NOT working properly)
...
At the moment, the experiment only works with a hard-coded address for the _stext symbol because the ElfReader cannot extract the symbol's address from the elf-binary. The experiment has been tested locally with PREREQUISITES = 1 and PREREQUISITES = 0. In the latter case, the test only considered the client/server communication, i.e., no FI has been performed at all (NOT tested yet).
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@2066 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2013-02-06 15:39:57 +00:00
b8df5d6a11
ecos_kernel_test experiment updated (NOT TESTED)
...
The loop is running now until undone already fetched jobs are available.
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@2044 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2013-01-31 16:33:50 +00:00
125914a305
BochsRegister.hpp and BochsRegisterIDs.hpp not needed anymore
...
The includes of these headers have already been removed from the experiments. In the current code, the content of the header BochsRegister.hpp is rather simply copied to x86/Architecture.hpp. It is therefore necessary to revisit the code soon (especially the FIXME related to register IDs).
Another problem is that there is no generalization of register IDs. Thus, all experiments are currently specific to a concrete architecture (which is not desired).
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@2010 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2013-01-17 13:41:23 +00:00
87ee9df37b
ecos: additional burst fault model
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1961 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-27 17:06:32 +00:00
5fe61e0f3f
ecos: cosmetics
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1960 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-27 17:06:29 +00:00
5135c79c05
TimerListener: microsecond granularity (ms is too coarse)
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1952 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-23 15:35:08 +00:00
c65c4936ab
ecos: compress traces
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1950 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-23 15:33:27 +00:00
35026de2d8
ecos: use multiple intermediate states to speed up experiments (disabled)
...
This modification creates and uses multiple intermediate snapshot states
(one every 1,000,000 instructions) to fast-forward to the FI site.
Unfortunately this doesn't work yet; the trace seems to change in many (not
all!) cases we do this. One possible cause could be an incorrect
(off-by-one or alike?) restoration of the serial device timers, and
therefore an earlier/later transition to "output buffer empty", resulting
in eCos' serial putc function needing a different amount of polling loop
iterations. Needs more investigation.
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1940 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-20 15:01:43 +00:00
041746741d
ecos: include variant and benchmark in job info
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1939 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-20 15:01:40 +00:00
4f48eb3232
ecos: send mandatory ecos_test_result when sanity check fails
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1929 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-13 16:26:58 +00:00
7b3e5986d1
ecos: save experiment runtime
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1927 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-13 00:17:31 +00:00
9decf95a09
ecos: specific traps are OK for two benchmarks
...
The "except1" and "clockcnv" benchmarks explicitly cause a trap and handle
it in their own trap handler. This, of course, isn't a bad experiment
outcome.
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1923 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-13 00:17:18 +00:00
464bc9390b
ecos: campaign rewritten
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1920 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-12 10:59:35 +00:00
4957cfb71b
ecos: remove hard-coded trace filename
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1913 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-10 16:13:59 +00:00
0ab4f12b7c
ecos: no need for clearListeners anymore
...
Since r1700, listeners remove themselves when they leave their scope.
A restore() call also implicitly clears all listeners.
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1912 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-09 15:37:33 +00:00
661563125e
ecos: cosmetics / compiler warning
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1910 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-09 15:37:27 +00:00
c2242f2bb4
ecos: guest-image independent fail client
...
TODO: campaign needs to be updated, too
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1908 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-09 15:37:21 +00:00
a26aeb52ee
ecos: preparations for guest-image independent fail client
...
Additional change: prerequisite data files are not opened in append mode
anymore. These files can be easily reproduced, and append mode does more harm
than good here.
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1906 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-09 15:37:14 +00:00
126fb1a1ff
ecos_kernel_test: remove 2nd reboot (which was just before a restore)
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1889 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-07 16:01:35 +00:00
b7bbcd389f
ecos_kernel_test: record error detected/corrected
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1882 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-06 10:51:41 +00:00
9e5de7b14a
ecos_kernel_test bugfix: timer granularity of 10s is way too coarse
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1877 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-02 16:59:07 +00:00
34d89000cf
ecos_kernel_test: simplification (no need to call clearListeners() here).
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1843 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-25 15:52:55 +00:00
8eb7bd129a
ecos_kernel_test: take width of memory accesses into account for determining bounds
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1591 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-09-05 09:05:11 +00:00
b33609ef1d
ecos_kernel_test: removed crude workarounds for bugs that have been fixed lately
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1588 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-09-03 13:14:47 +00:00
e6546c1365
limit number of sequential FAIL* experiments to 50, in order to prevent swapping
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1494 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-08-15 11:05:27 +00:00
2b72988203
ecos_kernel_test: wait more than once for test_output breakpoint
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1493 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-08-14 12:47:41 +00:00
b139c71053
ecos_kernel_test: experiment calculates timeout in STEP 2
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1492 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-08-14 09:32:07 +00:00