fe5d8fc71f
mcctrl_getrusage: validate os input
...
Change-Id: I97908069f8bc4703b99f9ffca94f3dd33eb64cc4
2020-11-25 01:58:47 +00:00
550c6cc5fb
mcctrl_perf_set : validate os input & check cpu info
...
Change-Id: If308013746ff6dce03fa8e0eb1ebaca1cb2a4a64
2020-11-25 01:58:47 +00:00
8c0b2ab6ce
mcctrl_perf_num: check "os" argument
...
Change-Id: I13c8b0c337cac9bbb240667808e871defce34aab
2020-11-25 01:58:47 +00:00
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
b3d7bbda56
rus_vm_fault: compat: RHEL-8.2
...
This applies the following patch:
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=1c8f422059ae5da07db7406ab916203f9417e396
mm: change return type to vm_fault_t
Change-Id: I7189fc92824d21b4906f1033f1de5899bbad4680
2020-07-15 13:02:32 +09:00
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
1d135492c3
mcexec: detect mismatch of mcexec -n and mpirun -ppn
...
Change-Id: I0c42e3119143da40ea2e69cd9ec99bde78a0ad2a
Refs: #929
2020-06-30 16:28:08 +09:00
5f5b9f94d1
Revert "get_one_cpu_topology: Renumber core_id (physical core id)"
...
This reverts commit 0a4e6b49b4 .
Change-Id: Icd9f2cda63d0daf661a40b146c72608b82cf2061
2020-06-16 13:26:55 +09:00
cbe2b2149d
Revert "sysinfo, procfs: Support memory info partially"
...
This reverts commit 8f74888f87 .
Change-Id: I65530dd8a4e1af2ca47cb02c02f5c54a9b4595a5
2020-06-16 13:26:54 +09:00
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
97b107f61c
treat /var/opt/FJSVtcs/ple/daemonif/ as device file (Fugaku specific)
...
Change-Id: I047ec793a082f2fede3f2bd9c5fb358a30b8ea84
2020-06-16 13:26:53 +09:00
eac414d6d8
CPU read/write reg: use generic IHK messaging interface
...
Change-Id: Ia9637d1516d9329fdadf37822bfce7594d69105f
2020-06-15 10:11:28 +09:00
f8e8b21f04
/dev/shm: use Linux PFNs and populate mappings
...
Change-Id: I921c1f43c8411f896343be17e0ac6762a1bc26d1
2020-06-13 17:18:10 +09:00
5c2f9b8239
pager: prefetch all shared libraries
...
Change-Id: Ic62e1284d540362df817098b3926ac223245e3b6
2020-06-13 17:18:10 +09:00
5395891966
pager_req_map: fix printk
...
Change-Id: I98488169f02656c2df711b827d0002762de69f7a
2020-06-13 17:18:09 +09:00
d15a396d5a
pager: use host physical for PMIx shared memory
...
Change-Id: Idfebc768ba03b5536a0e5eb1c6076769806fa7aa
2020-06-13 17:18:08 +09:00
0f6c36870c
mcexec_syscall(): disable no per-process structure warning
...
Change-Id: I951575f0077054ebcfe4b3f7e29416799ab6ade8
2020-06-13 17:18:08 +09:00
2ec2112cc5
IKC: use atomic allocation during initialization
...
Change-Id: I5bb5d7040092d47e4cdbdad87f9d1dd5b2ceaee5
2020-06-13 17:18:08 +09:00
c3c57940ba
Memory ordering and usage of ASM cmpxchg() instead of compiler atomic intrinsics
...
Change-Id: I4dadebc32721744dad982f3fc5b3eea7ab7ca745
2020-06-13 17:18:08 +09:00
2e2e973d78
hugefileobj: rewrite page allocation/handling
...
* manage pages by an array
* fix mmap of fd created by memfd_create() populates the map
* refactor pgsize and pgshift handling
Change-Id: Icaf015b10afc35f2b95f93059adf1a1b6b92e14e
refs: #1475
2020-05-19 23:36:25 -04:00
8f74888f87
sysinfo, procfs: Support memory info partially
...
Change-Id: I597dae4f82d64d3f23889cef960db18ae879ff06
refs: #1389
2020-05-14 00:53:25 +00:00
0082447043
mcctrl_get_request_os_cpu: Fix debug message
...
Change-Id: I0d2ae427b97b7284d61dd13825d4ba3d2130f26a
2020-04-16 07:44:36 +09:00
4f50c90f6e
__mcctrl_os_read_write_cpu_register: Range-check cpu number
...
Change-Id: I9ef991e1f0a7e301430586c261bf55bf73a4bae9
2020-04-16 07:44:36 +09:00
6cf7cebb2d
__mcctrl_control: Check user privilege
...
Change-Id: Ia87ab241f980ea25df805bd31d66f07bf3681311
2020-04-16 07:44:36 +09:00
97cd379ee2
mcctrl_os_shutdown_notifier: Move wait for running state to ihk side
...
Change-Id: I363391c63d92d952fc9a60c1e88f964eb50687fd
2020-04-15 00:54:00 +00:00
c78803ac08
madvise: Support MADV_REMOVE on tmpfs
...
Change-Id: Ic99d374c4d2630944c7bc838937d7f45601783c6
refs: #1371
2020-03-23 13:06:26 +09:00
0a4e6b49b4
get_one_cpu_topology: Renumber core_id (physical core id)
...
Change-Id: I4e4857e9a063d16d19d73adfabfc18a4b461bbfb
Refs: #1439
2020-03-12 05:19:25 +00:00
bf7fd81c1b
Fix includes to handle module ref counter properly
...
Change-Id: If3f067a14e40c346f0455f8bfb8bbc8ab2934e88
2020-03-12 10:24:01 +09:00
9e2196c9ce
fix: memory leak due to forced termination during startup
...
Change-Id: Ide519f01702bfd17ae4576e04806b6d155ae846a
refs: #1397
2020-03-09 01:10:38 +00:00
72af689e69
mcexec: detect mismatch of mcexec -n and mpirun -ppn
...
Change-Id: Iaf5cfb11c37bea6957b77a2114f783e9a46a48f2
Refs: #929
2020-02-05 06:39:57 +00:00
153d0609de
ihk_os_{read,write}_cpu_register: Add async support
...
Change-Id: Ia2a2098550e856eeffbb20d8d0e0bcd57b85b6d7
2020-01-31 12:40:43 +09:00
569dc33a9c
mmap: fail and set -ENODEV when map to unmappable special file
...
mappable special files are /dev/mem and /dev/zero
Change-Id: Id1d4317104f901644e565007913e320d287e376f
2019-12-05 07:22:17 +00:00
caac060684
mcctrl_getrusage: Round up cpuacct_stat_{system,user}
...
Change-Id: Ic1a236865fb3224dc9716c40a1eeb279c1fa1d70
2019-11-28 02:21:47 +00:00
d330721421
Rename struct cpu_topology to mcctrl_cpu_topology
...
To use a different name than the name in Linux kernel.
Change-Id: I44d10279195dfc9cfdc4788914b7d65b78292921
Fujitsu: POSTK_DEBUG_ARCH_DEP_40
2019-11-28 02:21:13 +00:00
18412616e1
munmap: Change permission of VMA back to RWX on unmap
...
Change-Id: Ic02098e7458dd8fa2961fb03dc32e37fb18c5dc5
Refs: #988
2019-09-26 03:49:50 +00:00
c371fbf13b
file map: cause SIGBUS when access to a page beyond EOF
...
Change-Id: Iaf7d792413e674267fd1c05c382212c8f67d8f5b
Refs: #1291
2019-09-26 03:41:23 +00:00
beac6c3e80
make checking write-combine arch-dependent
...
Change-Id: I4c0fca7d34e69b4774141e115b8ebc03c5c1e8b3
Fujitsu: POSTK_DEBUG_ARCH_DEP_12
Refs: #1355
2019-09-23 16:42:26 +09:00
0615a0b00b
procfs: mem: Change permission to 0600
...
It's 0400 in RHEL-5 and 6, but changed to 0600 in RHEL-7 and 8.
Change-Id: I9fb229e4c447eaa4570b1e2619c4fe039c07c86d
2019-08-19 01:17:03 +00:00
11ef2f8092
coredump: Support threads
...
Change-Id: Id75ade6c87b15abcff5d772d90f77950376a32c1
Refs: #1219
2019-08-09 04:00:15 +00:00
12aef0b578
arm64: mcctrl: Fixed to search vdso_offset_sigtramp dynamically.
...
Change-Id: Iab5459194ca5281a1680a7fc26ae8bfaf1945a13
Refs: #1341
2019-08-08 00:48:22 +00:00
b6285c9aa9
pmu: Use bitmap instead of index to specify counters / events
...
Let the software index (or number) same as the hardware index at the
same time.
Change-Id: I847180e94bf2c57644ae2f8f571cdb4a84eac991
2019-07-31 16:17:20 +09:00
207eba93ea
uti: syscall_backward: Use kmalloc area to pass syscall arguments
...
Change-Id: I478a9b40b75f3d1d68c4446810a6236fe2f3a96c
Fujitsu: POSTK_DEBUG_ARCH_DEP_106
Refs: #1320
2019-07-22 03:52:44 +00:00
90b6aec53d
get_one_cpu_topology: Fix error-handling
...
Fix the error handling of the following two functions:
ihk_device_get_cpu_topology: Returns NULL when not found,
valid non-NULL pointer when found
get_cache_topology: Returns NULL when not found,
valid non-NULL pointer when found,
minus error number on error
Change-Id: Ied13a61d4ab0c314477c45ea659ff2b798ad97ee
Fujitsu: POSTK_DEBUG_TEMP_FIX_21
2019-04-25 01:53:30 +00:00
80f964e44f
rus_vm_fault(): cleanup and early exit on NULL access
...
Change-Id: I90b18988989d4e377ed9c35df6b2e6bcdddd13b6
2019-04-23 08:53:59 +00:00
cc07d6e017
mcctrl_get_per_thread_data: Un-inline
...
Change-Id: I881db244ca551b3ca232918cb0b4245776f17295
Fujitsu: POSTK_DEBUG_ARCH_DEP_56
2019-04-18 02:35:52 +00:00
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
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
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
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
2ce695b47b
proc: resurrect /proc/PID/stat and fix a few fields
...
Change-Id: I8ffcfde4db78c66ea10845a0451ae2610261f832
2019-03-18 20:33:29 +09:00