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
4cef94a016
Removed the recommendation of repeat-speedups to avoid misunderstandings (see revision 1885)
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1888 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-07 09:02:12 +00:00
9c3755363b
bochs bugfix: store the timer ID for correct deregistration
...
Over a few indirections, this broke Bochs' 16550 UART simulation after
transferring a few hundreds of bytes. The UART uses internal timers to
simulate the configured baud rate; these timers cease to work after
repeated misuse from the Fail/Bochs bridge.
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1887 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-06 18:29:45 +00:00
1668e21ce1
bochs: removed preprocessor nonsense
...
It doesn't make sense to let timer (de)registration depend on
CONFIG_EVENT_BREAKPOINTS.
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1886 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-06 18:29:41 +00:00
1f8dfd01e9
bochs: trace REP/REPZ/REPNZ iterations
...
This allows single-stepping through REP/REPZ/REPNZ iterations. We mainly
need this for a little more realistic timing model when, e.g., copying
large memory areas with REP MOVSB.
Be aware that memory-access tracing only works reliably for REPxx-prefixed
instructions if Bochs was configured with --disable-repeat-speedups, as
this Bochs optimization completely circumvents the usual memory access
paths.
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1885 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-06 15:43:24 +00:00
0b8710872b
Removed BochController debug stuff. Merged: BochsController::onBreakpoint -> SimCon::onBreakpoint.
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1883 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-06 11:40:05 +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
cb3775b290
Ensuring parsability in case of exceptions
...
by removing unnecessary newline characters
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1874 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-01 13:28:52 +00:00
1423fb93dd
Removed instruction vector to reduce memory consumption
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1873 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-01 09:23:45 +00:00
163be81874
rampage: final experiment parameters, for the records
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1872 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-31 15:07:01 +00:00
e1dcbece88
limit fail-client instances on "big" IRB servers by default
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1871 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-31 15:06:58 +00:00
4ec51b003a
bugfix: WallclockTimer::operator<< must be inlined to prevent multiple defs.
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1869 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-31 12:42:48 +00:00
dd17034fce
WallclockTimer: coding style unifications.
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1867 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-30 12:15:26 +00:00
ccc4aca728
Forgot to cast the type
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1866 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-30 11:09:59 +00:00
22634f6103
Minor bugfix
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1865 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-30 10:59:27 +00:00
7ae8b6b09d
Introduces instruction filtering, e.g. to filter for kernel instructions
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1864 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-30 09:14:33 +00:00
247fed5aa7
Gem5: Implemented MemoryManager
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1863 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-28 23:50:08 +00:00
66fe662495
Gem5: functionalAccess() should not trigger memory access
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1862 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-28 23:50:06 +00:00
4a48b6c20c
nanojpeg: deleting result sets after handling them is not racy
...
Deleting result sets after retrieving them from the "done" queue is /not/
racy. This obviously was a misinterpretation of crashes with other
campaigns.
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1861 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-27 23:18:27 +00:00
4e26205aef
nanojpeg: count existing experiments and CSV rows
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1855 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-26 17:31:44 +00:00
8f39aa9717
nanojpeg: correct experiment count
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1854 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-26 17:31:41 +00:00
9038e7f603
increase pick window size for job reassignments
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1853 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-26 17:31:38 +00:00
720a59cfde
runcampaign.sh uses start-clients.sh instead of duplicating code
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1852 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-26 17:31:35 +00:00
3353bad6c6
number of clients per CPU = 1
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1851 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-26 17:31:31 +00:00
3dcc684400
read(2)/write(2) wrappers for reliable delivery
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1850 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-26 16:13:41 +00:00
55dd79cc03
cosmetics
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1849 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-26 16:13:36 +00:00
5a5367beee
nanojpeg: complete fault-space coverage by closing ECs in the end
...
As we don't know what happens after the "right margin" of the specified
fault space (specified by trace length, or an explicit instruction limit),
we need to do one FI experiment for every register/bit in the end.
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1847 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-26 14:27:35 +00:00
05217d77d9
nanojpeg: more thorough output address check
...
This prevents the experiment trying to read from invalid guest-system
addresses.
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1846 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-26 14:27:32 +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
e8f715f8af
comment-fix (not comprehensible this way)
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1842 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-25 15:51:20 +00:00
6b1f457662
bugfix: onDeletion() cannot be called on listeners in the fire-list. (+ simplified makeActive().)
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1841 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-25 15:49:25 +00:00
12f3550428
Reboot-test optimized
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1833 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-25 12:39:09 +00:00
1eb8ac6870
Bugfix: missing header added
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1832 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-25 12:36:56 +00:00
22cd362cc7
gem5: only enable Gem5Listener.ah when building gem5
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1825 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-24 23:40:10 +00:00
14ca377a85
nanojpeg: run 200 experiments, not 50 jobs
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1824 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-24 22:35:49 +00:00
bd3bef1f72
nanojpeg: load existing results before starting campaign
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1823 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-24 22:35:46 +00:00
4fb768972b
nanojpeg: allow CSV output to be buffered
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1822 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-24 22:35:43 +00:00
6c204d2a93
don't distribute to lidong by default
...
We currently need to apply extra care before deploying Fail* jobs on the
Lido-NG cluster.
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1821 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-24 22:32:05 +00:00
e0e95faa5b
Restructured the gem5 backend:
...
- FailGem5Device is gone.
- There are now changes directly made to the gem5 source.
- Gem5Connector is a helper class that is compiled inside the gem5 context to workaround problems with gem5 header in fail.
Things that are working:
- BPSingleListener
- MemAccessListener
- Save and restore simulator state
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1820 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-24 19:19:14 +00:00
b41eec3f65
Adding gem5 source to svn.
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1819 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-24 19:18:57 +00:00
f7ff71bd46
Revert "ListenerManager bugfix (segfault): [...]"
...
This commit *introduced* a segfault to the nanojpeg experiment. Indeed there is
no point in clearing m_FireList here:
1. Multiple active listeners match an event coming from the simulator. These
listeners are moved from their queue to m_FireList.
2. In a loop iterating over m_FireList, one of the listeners is triggered
(ListenerManager::triggerActiveListeners()). Context switches to an
experiment. The experiment explicitly (or implicitly, e.g., by terminating)
calls simulator.clearListeners().
3. ListenerManager::remove() clears all active (but not currently fired, or
about to be fired) listeners from the main listener queue (and additionally
all type-specific special containers). To prevent the "about to be fired"
listeners to fire, they are copied to m_DeleteList.
4. The loop mentioned in 2. does not trigger any listener mentioned in
m_DeleteList. Afterwards, m_FireList (and m_DeleteList) is cleared.
Clearing m_FireList in step 3 invalidates the iterator used in the loop from
steps 2 and 4. In fact, this problem was the reason we introduced the
m_DeleteList workaround in the first place.
This reverts commit r1817.
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1818 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-24 15:40:57 +00:00
8588617a86
ListenerManager bugfix (segfault): clear fire-list when clearListener() is called (this revealed a bug in reboot() which needs to be fixed too).
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1817 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-24 13:42:05 +00:00
4dcee177be
nanojpeg: receive/store results, merge identical neighbors
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1816 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-24 09:58:59 +00:00
554d80139a
nanojpeg: timeout reduced, instructions limited (temporarily)
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1815 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-24 09:58:56 +00:00
f61db1ff39
nanojpeg: psnr is optional
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1814 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-24 09:58:53 +00:00
1585b4a614
nanojpeg: signedness fixes
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1813 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-24 09:58:50 +00:00
8808eabc3c
bugfix: multiple CMAKE_AGPP_FLAGS
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1812 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-24 09:58:48 +00:00
bb621aac82
nanojpeg: uint32_t for IPs in protobuf message
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1811 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-24 09:58:45 +00:00
3de22e1b10
nanojpeg: count both jobs and single experiments
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1810 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-24 09:58:42 +00:00