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
2b1e4edd6b
nanojpeg: store known-outcome results, enqueue jobs
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1809 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-24 09:58:39 +00:00
892e5f86f0
nanojpeg: use absolute IP from trace
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1808 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-24 09:58:36 +00:00
b167b21de6
nanojpeg: handle known-outcome ECs
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1807 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-24 09:58:33 +00:00
6af5689cce
nanojpeg: cosmetics, updated CSV header
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1806 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-24 09:58:26 +00:00
f74954f460
nanojpeg: more diagnostic info for weird BROKEN cases
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1802 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-23 13:36:06 +00:00
c5304c0c31
nanojpeg: detect rogue memory accesses
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1801 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-23 13:36:03 +00:00
8de290f47d
nanojpeg: experiment largely complete
...
- utilizes ELF reader to find symbols
- retrieves generated image from guest system and calculates PSNR
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1798 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-22 21:13:20 +00:00
781fbf1f4e
elfreader: be less verbose
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1797 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-22 21:13:16 +00:00
41cf5e1352
nanojpeg: campaign's fault-space pruning works now
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1795 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-22 15:36:18 +00:00
1ae19893ea
nanojpeg: debug output (missing opcode information)
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1794 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-22 15:36:15 +00:00
d26fc600da
nanojpeg: helper for Udis86 -> Fail* register ID translation
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1793 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-22 15:36:12 +00:00
0d1618746c
sal/bochs: move register IDs to a separate file
...
This is necessary as a temporary fix: Currently, campaign code cannot use
Fail*'s architecture abstractions at all (e.g., we cannot iterate over all
existing GP registers). Until this is corrected by separating a concrete
backend and architecture information (the latter being usable by a
campaign), we now at least can use register IDs.
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1792 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-22 15:36:09 +00:00
069cd42d4d
nanojpeg: recognize more opcodes for -O3 variant
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1791 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-22 15:36:06 +00:00
8d96c50bfb
nanojpeg: default timeout
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1790 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-22 15:35:59 +00:00
bf8702e4a2
nanojpeg: determine IN/OUT/INOUT registers, handle implicit accesses
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1779 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-22 10:55:45 +00:00
2b5a2161df
nanojpeg: campaign work-in-progress
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1778 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-19 17:52:31 +00:00
e8c12b4580
nanojpeg: record trace
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1777 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-19 17:52:27 +00:00
26ff3552f2
consistent indentation
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1775 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-10-19 17:52:22 +00:00