9ae3a3f374
todo: modpost undefined errors
2025-08-23 11:02:25 +08:00
09173d353c
mcctrl_wakeup_desc: refcount and fix timeouts
...
Change-Id: I14b34f031ffb10bfac6cef07d81f53a8dece767b
2021-03-17 03:36:35 +00:00
ee974b200d
mcexec_open_exec: fix missing fput on error
...
Change-Id: I3ac94e336dc54ec313e69c0fa85c17086dc256fd
2021-03-11 07:03:04 +00:00
e43d52df20
Revert "mcexec_open_exec: make fput and add to mckernel_exec_files atomic"
...
This reverts commit c80ea0ed23 .
Change-Id: I0541e8af5157c7128f8774f6581cc207d13b649a
2021-03-10 14:21:57 +09:00
1c0da3c5b9
Revert "mcexec_open_exec: guard fput and add to mckernel_exec_files with spin_lock_irqsave"
...
This reverts commit cba263ff12 .
Change-Id: Ifcd03a2048a3f9d6c155dd8ecd522081b5dde276
2021-03-10 14:21:49 +09:00
cba263ff12
mcexec_open_exec: guard fput and add to mckernel_exec_files with spin_lock_irqsave
...
Change-Id: Id5dae8cb7f947d4e9939bf9c6762c2d1dcdd3776
2021-03-07 17:39:16 +09:00
c80ea0ed23
mcexec_open_exec: make fput and add to mckernel_exec_files atomic
...
Change-Id: Iff4ac8bb9b4ebfcb9c77e84ed3f0a40e6b9efb6a
2021-03-05 14:14:30 +09:00
eca107f52d
__mcctrl_os_read_write_cpu_register: spin timeout in mcctrl_ikc_send_wait()
...
Change-Id: I918be366c81be96cd76df659e3181a194d440dd8
2021-03-04 11:29:21 +09:00
90895cfb1f
test: uti: add tofu examples
...
Change-Id: I1c55c872d125201e60b4fe744af74106e1c5d3a4
2021-02-26 10:37:55 +09:00
32afa80718
uti: fix handling UTI_CPU_SET env
...
Change-Id: Icbf8dc7e82bd6983374aefdd0d5b89ad4152c9aa
2021-02-26 10:24:19 +09:00
adc5b7102f
uti: futex: cache remote va to remote pa result
...
Change-Id: Idbbb3f2981b76a0235615fceaa6281d2c7134ca2
2021-02-26 10:24:19 +09:00
a9973e913d
uti: futex call function in mcctrl
...
Previously, futex code of McKerenl was called by mccontrol,
but there ware some problems with this method.
(Mainly, location of McKernel image on memory)
Call futex code in mcctrl instead of the one in McKernel image,
giving the following benefits:
1. Not relying on shared kernel virtual address space with Linux any more
2. The cpu id store / retrieve is not needed and resulting in the code
Change-Id: Ic40929b64a655b270c435859fa287fedb713ee5c
refe: #1428
2021-02-26 10:24:19 +09:00
48b1d548f2
__mcctrl_os_read_write_cpu_register: fix timeout
...
Change-Id: Id5a7d316d793bd535f24fd353b214aa12af1dab4
2021-02-15 08:56:04 +00:00
23cd14af7d
__mcctrl_os_read_write_cpu_register: timeout in 1 sec for when McKernel can't respond
...
Change-Id: Ia2d5f64e107697dda1f3bae499eb3afb8a7aedba
2021-02-09 06:09:11 +00:00
3d71c6a8eb
mcexec_transfer_image(): map exact size of remote memory (instead of forcing PAGE_SIZE)
...
Change-Id: Ic66770af6cdb15b7a2e18a08cbcd1736e5558bdf
2021-02-03 18:53:33 -05:00
2460228052
mcctrl: abort on invalid addr in mcexec_transfer_image()
...
Change-Id: Ic064b6ffc30368ff1d3dfb14403e524cbb837ce5
2021-01-19 00:55:20 +00:00
507b937509
Tofu: mcctrl side MMU notifier and CQ/BCH cleanup
...
Conflicts:
executer/kernel/mcctrl/arch/arm64/archdeps.c
executer/kernel/mcctrl/syscall.c
Change-Id: Ided8172331a5469c6ced68fa98a42302812efe71
2021-01-19 00:55:20 +00:00
d5716d3c3a
TO RESET: mcctrl_get_request_os_cpu and __mcctrl_os_read_write_cpu_register: show debug messages
...
Change-Id: Ic8430e3fd6a814b888192233b029c942500a2dc9
2020-12-29 16:31:39 +09:00
e5f4a4e87d
Tofu: proper cleanup of device files when mcexec gets killed
...
Change-Id: I6cb0290f72d96682700f945b29585e132e525ac1
2020-12-09 13:05:54 +09:00
d1d93d90cc
mcexec: detect mismatch of mcexec -n and mpirun -ppn
...
Change-Id: I0ce1b2d48cda10713920cb88692e107b8c4d3bab
Refs: #929
2020-12-07 15:23:34 +09:00
2814f7cac4
mcctrl_get_request_os_cpu: check os instance & ret_cpu
...
Change-Id: I4d3f6fd93eaa183d560c874ba33add83c4308c5a
2020-11-25 01:58:47 +00:00
b510de7bd5
mcctrl_perf_get: check os instance & cpu info
...
Change-Id: Ic4f9d818b7d58f8ae651e43175fb1c478baec9c1
2020-11-25 01:58:47 +00:00
3e927f61dc
mcctrl_perf_disable: check os instance & cpu info
...
Change-Id: I7195272a65b31db72158f5e5bbfc490bac547b91
2020-11-25 01:58:47 +00:00
64579830dd
mcctrl_perf_enable: check os instance & cpu info
...
Change-Id: I31ab829d63833f924af17445fd9b8488d6eb454f
2020-11-25 01:58:47 +00:00
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
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
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
eac414d6d8
CPU read/write reg: use generic IHK messaging interface
...
Change-Id: Ia9637d1516d9329fdadf37822bfce7594d69105f
2020-06-15 10:11:28 +09:00
0f6c36870c
mcexec_syscall(): disable no per-process structure warning
...
Change-Id: I951575f0077054ebcfe4b3f7e29416799ab6ade8
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
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
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
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
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
6810506c3d
rusage: Fix available page sizes
...
Change-Id: I418075ff4b5341e0f5c7ff317e96461879a60f87
2019-02-22 14:08:18 +09:00
c82c2c1231
uti: Redirect uti thread futex() to McKernel do_futex()
...
Change-Id: I8203d0b60236e3ec72e22615a52907e1fff2c73c
2019-02-22 04:14:14 +00:00
366e95856c
Null-check ihk_os_t and mcctrl_usrdata pointers
...
Change-Id: I941c58d4ab6a0c1ce6bd53c24b552218a1716750
Refs: #1216
2019-02-14 16:26:19 +09:00
950ea678dd
Reject "setfsuid: Specify mcexec tid when asking mcexec for fsuid"
...
This fix is rejected because it only makes the setfsuid test in ostest
pass and doesn't fix the other issues including the one in which file
I/O could be done with the old fsuid because an mcexec thread with an
arbitrary tid could handle the system-call offload request.
Explanation of the rejected fix:
setfsuid() proceeds as follows:
1. McKernel asks mcexec for __NR_setfsuid (set)
2. mcexec calls setfsuid, reports the id to McKernel
3. McKernel asks mcexec for __NR_setfsuid (get)
4. mcexec calls mcexec_getcred(), reports the id to Mckernel
5. McKernel sets proc->fsuid to the obtained value
tid of mcexec on the 2nd and 4th step could be different. So this
fix lets mcexec report its tid on the 2nd step and McKernel specify
it in the 3rd step.
Change-Id: Id5cfeed18c64430d576a56e961bbca1ecb2e39ad
Fujitsu: POSTK_DEBUG_TEMP_FIX_45
2019-02-14 04:42:32 +00:00
ff0395581c
Register PPD and release_handler at the same time.
...
Fix that process will remain even if signal is received between PPD
registration and release_handler registration.
Refs: #1201
Fujitsu: POSTK_DEBUG_TEMP_FIX_64
Change-Id: I571781963578df8cedb327f19298f595cfb137a3
2019-02-08 10:20:58 +09:00
e52d748744
new_mcos_handler_info: Propagate kmalloc failure
...
Change-Id: If484cf32cd0bf096ffd712561dd1f73046c60cd8
Fujitsu: POSTK_TEMP_FIX_64
2019-02-01 15:11:36 +09:00