Balazs Gerofi
b3b1883ad8
eclair: turn off gdb pagination by default
...
Change-Id: I7758d97b90705310bc57cb9b6da6f6af436ea7fb
2020-12-29 16:31:40 +09:00
Masamichi Takagi
530110e3a9
Tofu: fix ENABLE_TOFU switching
...
Change-Id: Ib33323d4b59ea8fb4f5f40dff7ea25a36773d5e2
2020-12-24 15:00:14 +09:00
Masamichi Takagi
33dd2e60b1
mcexec: memory policy control by environmental variable
...
Refs: #1470
Change-Id: I3d556cae90d31d81572b1c4e5c680e826577d428
2020-12-24 11:18:01 +09:00
Balazs Gerofi
92902d36fc
Tofu: initial version
...
Change-Id: I9c464d5af883c18715a97ca9e9981cf73b260f90
2020-12-09 13:03:01 +09:00
Balazs Gerofi
201f5ce500
MM: straight mapping
...
Change-Id: I70871f8c382fb00aa719ed501cc5de436d916d7f
2020-12-08 12:32:10 +09:00
Ken Sato
d1d93d90cc
mcexec: detect mismatch of mcexec -n and mpirun -ppn
...
Change-Id: I0ce1b2d48cda10713920cb88692e107b8c4d3bab
Refs: #929
2020-12-07 15:23:34 +09:00
Balazs Gerofi
5ffad78b87
mcexec: use FLIB_NUM_PROCESS_ON_NODE when -n not specified (Fugaku specific)
...
Change-Id: I1668fecfac692d56076dd10e6e03fbf992e323ec
2020-08-12 07:30:11 +09:00
Masamichi Takagi
0b66bab992
Revert "mcexec: detect mismatch of mcexec -n and mpirun -ppn"
...
This reverts commit 1d135492c3 .
Conflicts:
executer/kernel/mcctrl/control.c
Change-Id: I224cced408aa4b77691a153c5e1d2fdf8043fa04
2020-07-21 13:08:21 +09:00
Ken Sato
4b66373813
mcexec: Don't forward SIGTSTP SIGTTIN SIGTTOUT to mckernel
...
Change-Id: I72bb74d6b98e1f0bf519c8f0fef742624a2a699a
Refs: #1425
2020-07-14 08:34:11 +00:00
Balazs Gerofi
ac86affecc
mcexec: fix FLIB_AFFINITY_ON_PROCESS mask for McKernel CPU numbers (Fugaku)
...
Change-Id: If42b139fb53866bcff0809d898d4a2a712946f0c
2020-06-30 16:29:03 +09:00
Balazs Gerofi
2026cf8dad
mcexec: explicit CPU list in partitoned execution (for Fujitsu's FLIB_AFFINITY_ON_PROCESS)
...
Change-Id: I05c11f73553de8ccb5f79083ce2115ac57e62584
2020-06-30 16:29:00 +09:00
Ken Sato
1d135492c3
mcexec: detect mismatch of mcexec -n and mpirun -ppn
...
Change-Id: I0c42e3119143da40ea2e69cd9ec99bde78a0ad2a
Refs: #929
2020-06-30 16:28:08 +09:00
Masamichi Takagi
697e9386b3
cmake: fix resovling dwarf.h
...
Fixes: 0e787b7 "cmake: fix resolving libdwarf"
Change-Id: Iccb491c8ad07db0f15f6b1798ee8a91edc808cf7
2020-06-22 13:33:50 +09:00
Masamichi Takagi
4cecde3fba
Revert "mcexec: detect mismatch of mcexec -n and mpirun -ppn"
...
This reverts commit 72af689e69 .
Change-Id: I25bc56cd8ac9c877852fc1092c8349fe318fd25d
2020-06-16 13:26:54 +09:00
Balazs Gerofi
3328ce03d9
Record pthread routine address in clone(), keep helper threads on caller CPU core (workaround for Fugaku)
...
Change-Id: I29d1589e430dc1396558cdf3df4d068c27173612
2020-06-16 13:26:53 +09:00
Masamichi Takagi
a7adb266ff
mcinspect: add read memory value by specifying physical address
...
Change-Id: I2f2d6cb981e883c5e2ae1e0c764e10e0fec76a46
2020-06-16 13:26:52 +09:00
Balazs Gerofi
5224551782
mcinspect: vtop (in progress)
...
Change-Id: I09f487e96edc7c4f59c97e6fb6dde28baf84c1e5
2020-06-15 10:11:28 +09:00
Balazs Gerofi
cd46cbd4b3
mcinspect and mcps: DWARF based LWK inspection
...
Change-Id: Ie9e209d8f77999b61afa39c38832bfc416a2c34f
2020-06-15 09:58:54 +09:00
Balazs Gerofi
39780917af
libdwarf: compile locally if not present
...
Change-Id: I70d1f653f4fc4ee4daeaa2c9c6bdbf1416e43c9b
2020-06-15 09:58:52 +09:00
Masamichi Takagi
16a6a1d08b
mcexec: Fix LD_PRELOAD string manipulation (again)
...
Fixes: 8cf70900 "mcexec: Fix LD_PRELOAD string manipulation"
Change-Id: I6e0188bd60f8e3977beb22c1f9212baf37f37093
2020-06-05 09:25:15 +00:00
Masamichi Takagi
367bbda713
mcexec: Fix resolving library path for LD_PRELOAD
...
Fixes: 8ee1d61d "Revert "Detect hang of McKernel in mcexec""
Fixes: b87ac8b8 "reproductible builds: remove most install paths in c code"
Change-Id: I8ef9ab81cd0a41ccd0e227ebc3e45c0745c150e9
2020-04-16 20:46:46 +09:00
Masamichi Takagi
79950e045e
eclair: Improve error message
...
Change-Id: Ib8fe3df0a529a17a2e331b16cf396915ab6a3eb2
2020-04-16 07:44:36 +09:00
Masamichi Takagi
8ee1d61d0f
Revert "Detect hang of McKernel in mcexec"
...
Change-Id: Ie8a0cf725f84a2f5d85da8b8fb15b30a826ddfcb
2020-04-15 00:50:55 +00:00
Masamichi Takagi
8cf70900e7
mcexec: Fix LD_PRELOAD string manipulation
...
To suppress compiler warnings.
Change-Id: I4d6b5ce2d2a8fca3f2675a7fc309df40cfe3c04b
2020-04-01 01:18:10 -04:00
Shiratori, Takehiro
d82ac31bc6
faccessat: Specify AT_SYMLINK_NOFOLLOW only when necessary.
...
- Specify AT_SYMLINK_NOFOLLOW in faccessat only when
the symbolic-link is analyzed by overlay_path().
Change-Id: Ie3b1f7fedef7441fd4b39c5c8b2ef0f73cba770e
Refs: #1370
2020-03-20 00:22:50 +00:00
Balazs Gerofi
32b32f0c4a
eclair: query phys memstart on arm64
...
Change-Id: I32db1153f5c1e4a217db69d8d55f0d0ccfa07c77
2020-03-12 10:53:41 +09:00
Balazs Gerofi
597baf8445
eclair: support for live debug
...
Change-Id: Ia9bc126e198ba4a80722529ce09de5eb0775d429
2020-02-10 07:45:06 +00:00
Balazs Gerofi
55faba77a5
dump: rewrite NMI handling (for resume) and fix PANIC register saving
...
Change-Id: I360e9aa8efa64b6ebd99b209a5dd4ee0dc7806cf
2020-02-10 07:45:01 +00:00
Balazs Gerofi
6bef773741
eclair and ldump2mcdump: obtain PHYS_OFFSET from dump_mem_chunks
...
Change-Id: I5dd5f9e7e6b5817e50b0a1855b67f163d3029f17
2020-02-10 07:42:23 +00:00
Balazs Gerofi
7882110e9f
eclair: obtain MAP_KERNEL_START from kernel image
...
Change-Id: I946c640ddb2e2b32362760254a86c611517becf3
2020-02-10 07:16:06 +00:00
Balazs Gerofi
d1df17ffb7
eclair: fix register GDB response for descheduled threads
...
Change-Id: I0001d094b624bc03f2b178ec28a4cab51e2acaf0
2020-02-10 07:16:06 +00:00
Ken Sato
72af689e69
mcexec: detect mismatch of mcexec -n and mpirun -ppn
...
Change-Id: Iaf5cfb11c37bea6957b77a2114f783e9a46a48f2
Refs: #929
2020-02-05 06:39:57 +00:00
Ken Sato
911b07f507
fix: fork's race-condition caused by child and grand-child
...
Refs: #1329
Change-Id: Ia2d7641d1203f40155fef5db718d1bb2c583c1c5
2020-01-09 06:33:13 +00:00
Balazs Gerofi
d5de68e97b
eclair and crash: clean up architecture dependent codes and comply with Linux page_offset_base
...
Change-Id: Ie14ceb8bc9d816a9201dddd4020e2c21d6cfd686
Fujitsu: POSTK_DEBUG_ARCH_DEP_34
2019-12-18 01:53:29 +00:00
Masamichi Takagi
3c256e1a6c
overlay: getdents: support lseek
...
Refs: #1421
Change-Id: Ife7ab1b50159a5897552ff695bb001ada27ec934
2019-12-13 03:49:20 +00:00
Ken Sato
7fc4272b89
handle execveat systemcall on McKernel
...
Refs: #1366
Change-Id: I921e04a0df8d0d798fc94f675e5112dd2fec190a
2019-12-06 09:33:13 +09:00
Ken Sato
1492f16d67
make syscall_enter arch-dependent
...
Change-Id: I4317f3443902620ef5b3807ced05c80fa5eebbec
Fujitsu: POSTK_DEBUG_ARCH_DEP_90
Refs: #1357
2019-09-26 03:28:57 +00:00
Ken Sato
a4b83dc6d4
eclair: use snprintf instead of sprintf to prevent buffer-overrun
...
Change-Id: I2a27cffe303201e1738f115258f6e02058dbc63d
Refs: #1356
Fujitsu: POSTK_DEBUG_ARCH_DEP_38
2019-09-25 06:38:55 +00:00
Masamichi Takagi
e1c6e17400
uti: Use only general registers in libmck_syscall_intercept.so
...
Change-Id: I8e8e98bdc7e621aa111c0940d915ebe1775a10c3
2019-07-23 04:53:06 +00:00
Masamichi Takagi
e58e1c6e33
uti: cmake: Add include dir pointing to libsyscall_intercept_hook_point.h
...
Change-Id: Iaea58725a16722d867cb27ffb4d9347b8756f9f2
2019-07-16 04:25:51 +00:00
Balazs Gerofi
b3b7801d51
overlay: fix /proc/PID/task/ corner cases
...
Change-Id: I17086c684af4c665d0c228b4a65cdb232eccf602
2019-06-07 01:48:10 +00:00
Masamichi Takagi
0887e0de6d
x86_64: mcexec: Remove "#include <asm/prctl.h>" (again)
...
Change-Id: Iae78954d5b520907cd6a85058e3a9fc1b842999f
Fujitsu: POSTK_DEBUG_ARCH_DEP_77
2019-04-25 10:33:00 +09:00
Masamichi Takagi
2c5c47344d
x86_64: mcexec: Remove "#include <asm/prctl.h>"
...
Change-Id: I441f7a1c2e23b927fcd065fefba3ef3617356c18
Fujitsu: POSTK_DEBUG_ARCH_DEP_77
2019-04-25 10:14:19 +09:00
Shiratori, Takehiro
c32edff2bb
uti: rename x86-specific 'fs' to 'tls' + arm implem
...
Note: the original fujitsu implementation didn't rename the various
save_fs function/desc to save_tls for some reason, might as well go all
the way though...
Change-Id: Ic362c15c8b320c4d258d2ead8c5fd4eafd9d0ae9
Fujitsu: POSTK_DEBUG_ARCH_DEP_91
2019-03-22 16:38:29 +09:00
Shiratori, Takehiro
8356ef6c96
arm64: uti: Add arch-dependent helper for context switch
...
arm64 performs context-switch in kernel space instead of user space as in
x86_64.
Change-Id: Ib119b9ff014effb970183ee86cfac67fab773cba
Futjitsu: POSTK_DEBUG_ARCH_DEP_99
2019-03-22 06:52:21 +00:00
Dominique Martinet
63d500515a
mcexec: fix printf format warning
...
Some old commit before -Werror was enabled got merged,
blocking other builds. Quickly fix before anyone notices
Change-Id: I5a034cef6f79e3e99b381bb1a5d97088e33a6718
2019-03-22 05:25:34 +00:00
Dominique Martinet
791e8c2114
Remove mcoverlayfs code
...
mcoverlayfs code is now unused (technically should work on top of the
soft emulation but not well tested, and untested unused code is bad).
Remove it.
Left the unshare/bind_mount_recursive code in mcexec in a new
MCEXEC_BIND_MOUNT ifdef (only in config.h.in directly to discourage use.
it disables the ioctl as well, but the main code is still compiled to
keep up to date with linux api changes... although it's using kallsyms
lookup so it does not validate much more than "the symbol still exists")
I honestly think this should go as well (people who would want to use it
are root and could do it manually), but will give up for now.
Change-Id: I832b6a8ab19e24ed67a1a5044b1c6c32381ae0aa
2019-03-22 05:18:43 +00:00
Dominique Martinet
b87ac8b8c0
reproductible builds: remove most install paths in c code
...
In order to speed up test bot work it would be helpful to check for
identical build outputs and skip tests if required.
This removes most use of the install path in c code:
- ql_mpi uses /proc/self/exe and looks for talker/server in same
directory as itself
- mcexec looks for libihk.so in /proc/self/maps and use that path for
LD_PRELOAD prefix path
- rootfsdir is not used right now but until a better fix happens just
hardcode it, someone who wants to change it can set it through cmake
There is one last occurence of the install directory, MCEXEC_PATH in
mcctrl's binfmt code, for which the build system will just overwrite it
to a constant string at build time instead of trying to remove it too
hard. It would be possible to pass it as a kernel parameter or look for
mcexec in PATH but this is too much work for now.
Change-Id: I5d1352bc5748a1ea10dcae4be630f30a07609296
2019-03-22 05:01:32 +00:00
TOIDA,Suguru
7c238c27c9
uti: Check syscall number definition in hook()
...
Change-Id: I24d226199d03d23a12710ff1cad9fef29a6feedd
2019-03-22 04:58:04 +00:00
TOIDA,Suguru
de77d2b061
add syscall_intercept.c to the mck_syscall_intercept
...
Change-Id: Iff8cfd2868118b6a9db7e24e4f00537251d1346c
2019-03-22 04:55:18 +00:00