01207617ba
Removed residual m_tStamp member in BaseListener class (see r1637).
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1696 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-09-27 09:25:59 +00:00
38c39c902b
WallclockTimer cleaned
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1695 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-09-25 17:20:32 +00:00
aa6ac5d119
WallclockTimer updated
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1694 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-09-25 17:16:22 +00:00
5aac012ea4
reverting r1671, it completely breaks linking everywhere
...
FIXME: We really need to make linking less fragile. The campaign server
should not (at the moment: cannot, and does not) link against the
simulator backend, but the SAL instance refers to backend symbols. This
just seems to work currently due to lucky translation unit arrangement and
a lot of karma accumulated over the last few years.
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1693 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-09-25 16:14:25 +00:00
d45965753d
bugfix: handle old clients properly
...
Fix 1: A result message with a nonexistent or invalid run ID must be
ignored in any case. 0 is only OK for NEED_WORK messages, clients
communicating a result must know the ID.
Fix 2: Tell the client the run ID in the first place ...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1692 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-09-25 16:14:22 +00:00
65eb44a746
workaround for experiment.hpp including generated header
...
If an experiment's class definition (experiment.hpp) contains a member of
a generated type (which is the common case for protobuf messages), it needs
to include a generated header. In order to instantiate the experiment in
a SimulatorController::initExperiments() hook aspect, the aspect needs to
include the experiment's class definition -- and indirectly the generated
protobuf header. As the build system does not know about this dependency,
building SimulatorController.cc fails regularly, because the header is not
generated timely.
This commit works around this (currently only for the RAMpage experiment)
by delegating experiment instantiation to a separate compilation unit,
removing the need to include any headers in the instantiation aspect.
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1691 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-09-25 15:52:45 +00:00
9dd050b9f5
SUCCESS --> SUCCESSFUL
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1690 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-09-25 13:24:13 +00:00
e55997e614
Removed remove(iterator) (no longer needed), m_remove() simplified.
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1688 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-09-25 12:39:06 +00:00
fb7a7ed849
bugfix: qemu compiles again
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1687 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-09-25 12:36:42 +00:00
057c216dc0
Removed BufferCache stuff (fast breakpoints will do the job, see r1685).
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1686 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-09-25 11:36:19 +00:00
0cb6b39490
Aspect-based implementation of fast breakpoints added (optional).
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1685 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-09-25 10:10:02 +00:00
0783931bf6
RAMpage campaign: update for 2G experiments
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1679 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-09-23 17:28:13 +00:00
7ffd6611d3
RAMpage experiment: allow more than one empty test cycle
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1678 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-09-23 17:28:10 +00:00
7513dacad1
properly deal with clients that talked to another campaign server before
...
A campaign server now tells all clients a unique run ID (the UNIX timestamp
when it was started). This allows us to ignore results from "old" clients
that talked to another server before, and to tell them to die.
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1677 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-09-23 17:28:07 +00:00
63264b8075
WallclockTimer added
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1673 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-09-21 14:08:10 +00:00
d983aecf73
added missing dependencies on protobuf library
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1672 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-09-20 17:22:05 +00:00
7d26f2f3d6
bugfix: linker problems on Ubuntu 12.04
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1671 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-09-20 17:22:02 +00:00
6785b3199a
RAMpage campaign: bugfix: detail description buffer too small
...
... for one single experiment with weird output.
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1667 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-09-20 17:19:43 +00:00
74e75da8d6
RAMpage campaign: run one experiment for every 4k page
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1666 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-09-20 17:19:41 +00:00
f1bb6d9853
RAMpage experiment: result type IDs fixed
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1655 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-09-14 20:39:53 +00:00
d263b33019
RAMpage experiment: parameter messages use unsigned integers
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1654 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-09-14 16:03:22 +00:00
ec601e2891
RAMpage campaign: reuse already existing results
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1653 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-09-14 16:03:20 +00:00
7c48c3e35c
RAMpage experiment: test whether the failing PFN was listed
...
+minor logging changes and comments
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1652 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-09-14 16:03:17 +00:00
8180047d01
RAMpage experiment: distinguish right/wrong PFN
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1651 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-09-14 16:03:14 +00:00
f2c7680d47
RAMpage experiment: measure experiment time
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1650 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-09-14 16:03:11 +00:00
dbd4216f56
RAMpage experiment: campaign
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1649 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-09-14 16:03:08 +00:00
5c967a73d4
RAMpage experiment: FI debug output
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1648 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-09-14 16:02:57 +00:00
42750eac15
regression-test experiment cleaned up
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1647 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-09-14 10:47:44 +00:00
c52988ea70
RAMpage experiment: basic client-side functionality complete
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1644 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-09-13 23:17:44 +00:00
55b94e9e17
RAMpage experiment: parameter message overhaul
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1643 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-09-13 21:27:16 +00:00
69934c7eef
RAMpage experiment: output state machine in place
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1642 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-09-13 21:27:13 +00:00
c4899207af
ovp: initialization aspect only enabled if OVP is built
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1641 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-09-13 21:27:09 +00:00
4886d8250d
RAMpage experiment now utilizes serial I/O and timers
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1640 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-09-13 20:08:45 +00:00
dc5ce33fc1
qemu: TimerListeners
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1639 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-09-13 20:08:42 +00:00
4e321409b7
several FIXMEs on virtual BaseListener functions
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1638 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-09-13 20:08:39 +00:00
15e965febf
BaseListener: remove pointless creation timestamps
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1637 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-09-13 20:07:00 +00:00
8ef01b7dfa
hscsimple restored
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1636 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-09-13 14:38:07 +00:00
f3d19e2b8d
new regression-test experiment
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1635 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-09-13 13:00:57 +00:00
f913d3f1ac
disabling debug output
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1623 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-09-12 16:10:38 +00:00
f795bf63c4
qemu: IOPortListener
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1622 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-09-12 16:05:18 +00:00
095adbc7e5
RAMpage FI experiment, WIP
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1621 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-09-12 14:14:05 +00:00
b327b49a4e
qemu: MemoryManager
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1620 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-09-12 14:07:19 +00:00
d40113c535
qemu: MemWriteListener specialization
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1619 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-09-12 14:07:15 +00:00
a8756f3d0a
listener's data members should be accessible by child classes
...
We could do this via getters/setters, but why bother (for now).
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1618 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-09-12 14:07:12 +00:00
8cadb3e5c6
bochs: version not hardcoded anymore
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1617 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-09-12 14:07:10 +00:00
6223759471
qemu: Fail* startup hook
...
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1616 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-09-12 14:07:07 +00:00
e715149033
first steps towards a QEMU target backend
...
- This commit only enables linking against QEMU. The abstraction layer is
completely dysfunctional at this time.
- QEMU's build system needs to be patched in order to create a static
library. This patch is currently not included in the Fail* repository.
- QEMU's JIT compilation may complicate or even preclude the implementation
of some of Fail*'s backend abstractions. Only a minimal subset (serial
I/O, memory, memory writes, save/restore) is planned for the first phase.
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1615 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-09-12 14:07:03 +00:00
f9c96ddf2d
prefix internal libraries to avoid naming conflicts with system libraries
...
This is a precaution to avoid current and future naming conflicts with
common system libraries. libutil (part of libc) is the first, but probably
not the last example that already caused trouble twice.
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1614 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-09-12 07:52:30 +00:00
2fed94ae49
global interrupt_to_fire seems not to be Bochs-specific at the moment
...
FIXME: This shouldn't be a global variable (probably a SimulatorController
member?). Reconsider interrupt generation being part of the generic
interface.
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1612 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-09-11 17:10:11 +00:00
4f18dd945e
MemoryController: guestToHost should not be part of the abstract iface
...
Not all backends have their memory mapped to a Fail*-accessible address.
Especially hardware targets can only be accessed indirectly.
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1611 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2012-09-11 17:10:08 +00:00