78 Commits

Author SHA1 Message Date
f309508fdd dockerfile: move to repo root 2026-01-29 00:59:29 +01:00
e0c6be3270 dockerfile: update image tags 2026-01-25 19:47:27 +01:00
43de918fa3 expose database port in composefile 2026-01-18 21:17:11 +01:00
eaba782ca6 update mysql host 2026-01-18 19:51:43 +01:00
47b5b147b6 dockerfile: build dump/import/prune tools for generic-tracing 2026-01-18 19:51:38 +01:00
06f7346533 dockerfile: don't cache fail/fail-targets clones 2026-01-18 19:19:42 +01:00
569ee2b898 orchestrate containers using compose instead of makefile 2026-01-18 18:47:52 +01:00
ba991c0639 dockerfile: rename linked outputs 2026-01-18 18:47:17 +01:00
5a9c7b84ee dockerfile: replace links to fail/fail-targets with my forks 2026-01-18 18:47:17 +01:00
7b0e79d45b dockerfile: finally produce a working dockerfile 2026-01-18 18:47:17 +01:00
f4f688acb6 dockerfile: update makefile to run with current docker versions 2026-01-18 18:47:17 +01:00
eade35bd98 dockerfile: update base ubuntu image to 16.04 + replace ccmake with explicit cmake options 2026-01-13 00:12:10 +01:00
c10739b8df dockerfile: don't check fail-targets.git certificates 2026-01-12 23:25:46 +01:00
c1441d9f5e dockerfile: symlink llvm-config-3.4 to llvm-config so FindLLVM.cmake finds it 2026-01-12 23:25:46 +01:00
91bd98db62 dockerfile: install missing boost libraries 2026-01-12 23:25:46 +01:00
241c583c54 dockerfile: don't check fail.git certificates 2026-01-12 23:25:46 +01:00
bca506ddcc dockerfile: don't check AspectC++ certificates 2026-01-12 23:25:46 +01:00
ee42a0ca0b dockerfile: fix package sources of deprecated ubuntu version 2026-01-12 23:25:46 +01:00
d3d2faf680 globally rename Fail* to FAIL*
Change-Id: Ief2cb687cc69dd92c2e04f9314f0f1347e0a84ed
2016-07-26 17:41:32 +02:00
442fa35c19 distribute-experiment.sh: exclude *.pb files from rsync
Change-Id: I6997dcb767fa302745a3a1c35eae2d5ad5166372
2015-06-19 17:23:53 +02:00
eaf4e1f510 client.sh: run 'free' command in english to allow parsing its output
Change-Id: I2aa2d5733f52b4ed8abf9d619bca733fbabb5389
2015-06-16 12:30:41 +02:00
1dcd4fbeb2 fail-cleanup-db.sh: cleanup "symbol" table as well
(The "symbol" is currently only created by some inofficial scripts,
but may become part of the Fail* core at some point.)

Change-Id: If0b3e6cdd6b6ca865abb67382de128e7a27f19ab
2015-01-30 13:28:33 +01:00
b8c03bca8d fail-env: assign -> use default values
In bash, ${parameter:=word} assigns the default value.  In our case,
${parameter:-word} (the whole expression has a default value, but it's
not assigned) suffices.

Change-Id: I5f4105b973892aa13943d660cbebaed76fd43752
2015-01-29 16:43:22 +01:00
722715c01f fail-cleanup-db.sh: cleanup unused DB entries
This script removes dangling rows from the database, for example
'trace' entries with a variant_id not mentioned in the 'variants'
table, or result rows referencing a nonexistent 'fsppilot' entry.
IOW, this script enforces referential integrity as it would be
maintained by foreign key constraints (that can only be used with
InnoDB tables).

Change-Id: I4dce1e46277d470f8c3eca31447ca71f63c6353f
2015-01-12 16:45:38 +01:00
96ead7df84 scripts/docker: use ac++ 1.2 instead of daily build
Since the AspectC++ daily builds switched to the clang frontend, Fail*
doesn't build anymore.  Unless that changes, use the 1.2 release.

Change-Id: Ia7817c396dfabd3a10f0cf0ea6a8d4c1fb95365d
2014-11-14 11:08:47 +01:00
6e6148f701 client.sh: exit on any error status
This prevents the client script from continuously invoking
the fail-client when it is not executable, e.g., in the case
of missing libraries.

Change-Id: I2746eaf1980507dbd7c95fb5a6a1cc018a33aa67
2014-11-10 15:45:38 +01:00
6ab55a8359 scripts/docker: Added docker.io scripts to bootstrap a fail demo
The docker files provide containers with the full toolchain required to
build FAIL*. They also contain a demonstration FI campaign.

Change-Id: I280210eb0487718e82505f0343fa9303c21b8048
2014-11-03 13:10:11 +01:00
a20d3cd12f exchange experimentInfo.hpp by experiment.conf which is know paresd during
runtime (no recompile anymore)
2014-06-19 19:13:33 +02:00
0009a95e62 fail-env updated
Change-Id: Idf605dddc4026c9b796d0ef7174e430d9aed1236
2014-02-25 13:32:56 +01:00
443b3e4919 L4Sys: termination shortcuts
Add two new breakpoints to L4Sys experiment that allow detecting that
execution terminated with an error: vga_console_blink() is called by the
kernel if JDB was entered (meaning we are hanging, e.g., due to an
assertion); also longjmp() is only used by PF handling code after no
valid page fault handling could be performed

Change-Id: Ice61039c4bd07815a316bbc0bdb39f3483d9a1da
2013-11-06 17:37:20 +01:00
a65c64791e L4Sys experiment: add CR3 detection to prep run
Change-Id: Iebbc0309695ee6a7bb8c68fd6ffa24b73ffd7ee5
2013-10-21 15:28:07 +02:00
523f4a465b add injection address to results
Change-Id: I7966f97b8c09bbd6510ca6066dd40be398b54de3
2013-10-21 15:28:07 +02:00
1a09d30127 L4Sys: prepare script supports mem/reg experiments
Change-Id: Ibcbc9e99b063d4b019b4d68401c77fc964253da8
2013-09-11 18:02:03 +02:00
045c08faf6 l4sys script: remove dbg option
Change-Id: Ica13735ba04b7ae79fde6fb1462ca8200694b278
2013-08-30 16:05:21 +02:00
25ea559e59 Merge changes I7f48460e,I1f7fbdaf
* changes:
  gem5 startup script: revisited fs.py to get rid of ARM linux images
  doc/how-to-build: dependency libmysqlclient-dev
2013-08-21 13:35:43 +02:00
5e238cc3f9 gem5 startup script: revisited fs.py to get rid of ARM linux images
In former versions, the aforementioned image was 'required' to run
gem5 although it wasn't actually used at all. With the new python
script fail_fs.py, it suffices to start gem5 on a target foo.elf by
simply typing $ ../scripts/run-gem5.sh path/to/target/foo.elf

Change-Id: I7f48460e50d48d55fe22f2381e2ae8aec8510233
2013-08-21 12:05:16 +02:00
ed772429f9 L4Sys: fix use of L4SYS_NUMINSTR
* L4SYS_NUMINSTR counts the instructions that were selected for
  injection and is used by the campaign server to generate experiments
* L4SYS_TOTINSTR counts the total number of instructions executed.
  It is used by the experiment to determine the timeout value.

Change-Id: Ibf37aea2a1f5ad5afad2b1232ce22fe070b08490
2013-08-09 14:59:45 +02:00
5364cfefaa typo...
Change-Id: Ic23a74c429b5b441a85d9e3933f2f9829bc679f9
2013-08-08 17:01:05 +02:00
f8e31445ce L4Sys: add a script to automate experiment setup
Change-Id: I1f5770bbbc75a6498182e8b357756c48cc81dfa2
2013-08-08 16:57:11 +02:00
0f16f18d75 cosmetics
Change-Id: Ifae805ae1e2dac95324e054af09a7b70f5d5b60c
2013-04-22 14:24:02 +02:00
28fc41da65 Merge branch 'master' of ssh://vamos.informatik.uni-erlangen.de:29418/fail
Change-Id: I35e86d4b367be395121451a86f2731606f43eeff
2013-03-22 16:51:29 +01:00
3c349e06f3 Documentation: Cleanup
Doxygen docu is now build in ${PROJECT_BINARY_DIR}/doc.
(and other small changes.)

Change-Id: I3fef910307e104f120c4f770526c800cfd01a41f
2013-03-22 16:18:58 +01:00
b8e706b1a5 T32SIM: Integrating Tracing feature of the T32SIM.
After each simulator break, T32Tracer retrieves the latest (16)
trace records from the T32. Memory address and value can now
be evaluated easily from the trace record.

TODO:Nevertheless we still have to traverse the trace to
find the instruction causing the access.
2013-03-21 18:57:46 +01:00
96bc39c05d T32 Simulator: Basic Instruction set sim for ARMM3
The T32 can simulate bare instruction sets without periphery.
For the Cortex-M3 we have complete NVIC model including Systick Timer.
Currently a simple CiAO can run on the simulator.

TODO:
 - Let memlogger log all memory accesses.
 - Interact with FailT32 for a complete simulation/FI
2013-03-20 17:17:38 +01:00
15f02f9c53 run-regression-test.sh updated
Over the time, the Cmake-Config has changed. Because of this the script
had to be adjusted.

git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@2039 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2013-01-31 14:32:11 +00:00
19f1957a7f Regression-Test output imroved.
The output of the regression test has been outputted incorrectly.
This problem was corrected.
Moreover, the outputs are more comprehensive now.

git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@2022 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
2013-01-30 14:58:14 +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
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
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