Commit Graph

510 Commits

Author SHA1 Message Date
hsc
86ba9cb377 CampaignManager: only instantiate JobServer when needed
As we have a global CampaignManager instance in the fail-cpn library, a
JobServer member variable is not such a good idea.  Essentially, we started
all JobServer threads (which is done in its constructor) within a
fail-client before this commit.

git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1915 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-10 16:14:06 +00:00
hsc
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
hsc
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
hsc
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
hsc
1292b66043 ecos: image/prerequisite/result path naming changes
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1909 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-09 15:37:24 +00:00
hsc
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
hsc
805f67e23c ElfReader: return ADDR_INV instead of (signed) -1 on failure
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1907 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-09 15:37:18 +00:00
hsc
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
bbf7731aa2 fast-watchpoints: implementation finished (and tested).
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1900 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-08 13:36:08 +00:00
ddbab2e903 build-system: separated fast-breakpoints, added fast-watchpoints.
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1899 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-08 13:35:22 +00:00
4a6b576b18 fast-breakpoints: created template class DefPerfVector, realizing the buffer interface. Modified PerfVectorBreakpoints appropriately.
This is useful to reuse the DefPerfVector class for fast-watchpoints, too.

git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1898 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-08 13:18:40 +00:00
148b0bb483 fast-breakpoints: work even if fast-watchpoints are enabled (TODO removed).
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1897 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-08 13:07:02 +00:00
5648093ffe fast-breakpoints: use explicit namespace qualifier in aspect header.
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1896 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-08 13:05:05 +00:00
e337fef205 perf-test: further results added
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1895 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-08 12:59:43 +00:00
2eb18c81ac perf-test: code improved.
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1894 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-11-08 12:59:16 +00:00
chb
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
hsc
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
hsc
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
hsc
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
chb
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
hsc
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
hsc
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
hsc
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
hsc
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
hsc
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
hsc
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
hsc
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
hsc
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
hsc
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
hsc
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
hsc
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
hsc
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
hsc
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
hsc
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