64dbb93260
Still need to port some kernel modules
2025-08-23 00:35:29 +08:00
3e00189de0
kprintf: fix checking if interrupt is disabled
...
Change-Id: I2ee1a1e2438ae761c4136593953ede2738bc6f74
2021-03-11 07:03:04 +00:00
47aec70f5f
shmobj: support large page
...
Change-Id: I104c1b8551b87f5cbfedb13262e77c00c38e9643
2021-03-03 05:07:49 +00:00
d2db639853
xpmem: support large page
...
1. try to use as large page as possible on attach
2. pre-map resident remote pages on attach
Change-Id: I5580682a4199e94085a9bad9ce3958a0f14cdcea
2021-03-03 05:07:49 +00: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
afea6af667
Send a signal to mcexec after switching to that process.
...
Change-Id: Ia882ef5027931009ee65febd0cbe22022a755c4a
Refs: #1505
2021-02-19 02:28:29 +00:00
93dafc5f79
migrate: Don't migrate on in-kernel interrupt
...
Change-Id: I9c07e0d633687ce232ec3cd0c80439ca2e856293
Refs: #1555
2021-02-18 15:30:22 +09:00
9f39d1cd88
move_pages: Fix and support some specs for LTP.
...
1. When nodes array is NULL, move_pages doesn't move any pages,
instead will return the node where each page
currently resides by status array.
2. Check whether all specified node is online or not.
Change-Id: Ie3534997833d797e2a9f595d1107b07d46e1c6cf
Refs: #1523
2021-02-18 06:16:17 +00:00
a0d446b27f
smp: make smp_call_func() arch independent
...
Change-Id: Ib60604ceb3274b173bd7f96cf57c8c35c1889e44
2021-02-18 06:16:17 +00:00
d726bd3d11
profile: fix definition of PROFILE_ENABLE and __NR_profile
...
Change-Id: I3f9f5870f8380d3668e1ccb06fd0f6d3307e3fa4
2021-01-06 01:03:17 +00:00
2a984a12fe
TO RESET: unhandled_page_fault: show instruction address
...
Change-Id: I29a8d30d9b3e5cfbe5e16b1faaa253e794b8fc5b
2020-12-29 16:31:38 +09:00
191e6f7499
TO RESET: preempt_enable: check if no_preempt isn't negative
...
Change-Id: I1cef2077c50f3b3020870505dd065d10617f440e
2020-12-25 11:34:14 +09:00
8f2c8791bf
TO RESET: arm64: enable interrupt on panic
...
Change-Id: I1ceb321de324f307fc82366b162c72f64184247b
2020-12-24 17:18:37 +09:00
201f5ce500
MM: straight mapping
...
Change-Id: I70871f8c382fb00aa719ed501cc5de436d916d7f
2020-12-08 12:32:10 +09:00
fbd121d28c
mmap: return -EINVAL for non-anonymous, MAP_HUGETLB map
...
Change-Id: I2bcbbf0ee9c0f47160eabac4a8d09991c71fe852
2020-12-07 15:23:38 +09:00
d7cf39883f
Revert "shmobj: Support large page"
...
This reverts commit 9a60997ea0 .
Change-Id: Id60959b4e03451987239faa0bbc2e780b72fafaa
2020-07-19 12:53:45 +00:00
a20e1acf01
syscall: add prlimit64
...
Change-Id: Iad882813d54b439c236c0df74dc81508190e6707
2020-07-19 21:52:46 +09:00
9a60997ea0
shmobj: Support large page
...
Mixing page sizes is allowed by shmobj.
Change-Id: Ic48b71da2db6ce3f68fa3dbc8ad5ae96347d6018
Refs: #1381
Refs: #1458
2020-07-15 03:50:56 +00:00
d78a0fd05d
sysinfo: support basic entries
...
Change-Id: I27f3e55058cc29f895831a1dddfafbc8585746a5
refs: #1389
2020-07-10 14:51:25 +09:00
999bc91b4f
arch: Move some functions from arch-dependent to common part
...
Moved syscall rt_sigaction and functions related to signal.
Change-Id: I39f619e008d9c6018d91099a76dfb30e48757673
Refs: 1487
2020-07-10 03:54:28 +00:00
d3d9e2400d
test: ihklib: syscall_list.h: add robust marker for patch
...
Change-Id: Ie5f72b4b296db4d44e9839f38fd9a68854be78c3
2020-07-06 16:25:11 +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
6332903f0d
Revert "xpmem: Support large page attachment"
...
This reverts commit a8696d811d .
Conflicts:
kernel/include/process.h
kernel/syscall.c
kernel/xpmem.c
Change-Id: I726e74450f6228d3fc78fc62dda15b2067732a53
2020-06-16 13:25:57 +09:00
d5aafca1ae
VM: use RW spinlock for vm_range_lock
...
Change-Id: Id4654084207d55bf77cc9f8b42795e0f9873cfa0
2020-06-12 03:07:33 +00:00
8f74888f87
sysinfo, procfs: Support memory info partially
...
Change-Id: I597dae4f82d64d3f23889cef960db18ae879ff06
refs: #1389
2020-05-14 00:53:25 +00:00
f1caaa9b74
freeze: arm64: use normal interrupt instead of NMI
...
Fixes: 55faba7 "dump: rewrite NMI handling (for resume) and fix PANIC register saving"
Fixes: ff982b8 "freeze: change freeze-thaw to normal interrupt"
Change-Id: I9445cac191f91d20357cae11b2839e4e9384ac6f
2020-04-15 01:04:20 +00:00
04d17dd3e9
Define MAP_KERNEL_START by resolving MODULES_END at cmake time
...
Change-Id: Ib88fc045b64c4ad2dad6a4b13cb0372a735a26ab
2020-04-09 00:30:05 -04:00
edf7b36669
runq_lock: Fix deadlock due to cpu migration.
...
Symptom and analysis:
runq_lock of the migration source is acquired on
the migration destination CPU.
This happens in the following steps:
(1) The thread stores value of cpu_local_var(runq_lock)
to its register when trying to perform
ihk_mc_spinlock_lock() on the lock variable.
(2) The thread takes IPI and migrates to another CPU.
(3) The thread resumes execution and acquires the wrong lock.
Solution:
* Disable interrupts before getting the value of
cpu_local_var(runq_lock)
Change-Id: Ia0ea450b97f872dd6116252537e4a79f85adfc88
Refs: #1400
2020-03-05 01:51:40 +00:00
5719b4c64a
perf: update event structure
...
Change-Id: I5bc0fdd42db509b5d2daca7d97e29ad1f7d11f1a
2020-03-03 13:23:30 +09:00
343121c3d0
perf: set event period
...
Change-Id: Ibf569de7af8697e766c10b8d70905b8cdc4df083
2020-03-03 13:23:30 +09:00
86c45484e3
perf: add struct hw_perf_event
...
Change-Id: I0938e2b18064ad805a9edb6e15d26cf438bf0a59
2020-03-03 13:23:29 +09:00
a27909be88
ihk_atomic64_set argument to long
...
Change-Id: Ie9b5978028000236ae5846214a2ea14fcdffaf56
2020-03-03 13:23:29 +09:00
cafb46efc7
rt_sigtimedwait: could not wait for ignored signal
...
Change-Id: I0f5a8e2eaae2b7c08a01f4ebb2c405b8972269a2
Refs: #1378
2020-02-13 06:23:22 +00:00
55faba77a5
dump: rewrite NMI handling (for resume) and fix PANIC register saving
...
Change-Id: I360e9aa8efa64b6ebd99b209a5dd4ee0dc7806cf
2020-02-10 07:45:01 +00:00
f00d03445c
epoll_pwait, ppoll, pselect: add to process sigmask
...
Change-Id: I6aa1db3b4c6ad81a8b5926fa87fc645269b103b6
Refs: #1361
2020-01-09 06:54:23 +00:00
1526237bc6
x86 memory: use page_offset_base from linux
...
rhel 7.5 and later kernels have a page offset that is no longer
necessarily 0xffff880000000000, leading to kernel panics if we
use the wrong address
Change-Id: I3572fde1c31303a937855c23fbd3815ce0f96c64
2019-12-17 08:05:38 +00:00
7fc4272b89
handle execveat systemcall on McKernel
...
Refs: #1366
Change-Id: I921e04a0df8d0d798fc94f675e5112dd2fec190a
2019-12-06 09:33:13 +09:00
a8696d811d
xpmem: Support large page attachment
...
Change-Id: I4d672eee1c905160ece204d278f0afd9b6d7dc01
Refs: #1259
2019-12-06 09:30:51 +09:00
4b252a990f
SIGCONT: don't terminate process
...
Change-Id: Ib959a9e5341fda37bd055724ecb9319a469b7420
Refs: #1410
2019-12-05 07:13:56 +00:00
adb6cce3ce
The process sending SIGCONT resumes the stopped process.
...
Change-Id: I64ee10172b99aa58540ffe8e9dd80fa0a64f4d01
Refs: #1420
2019-12-05 07:13:56 +00:00
37605740a4
support for backlog
...
Change-Id: Id8f503234e7afaa284e6b97dc264eb3a2af145c7
2019-12-05 07:08:13 +00:00
a563d780c1
munmap: fix deadlock with remote pagefault on vm range lock
...
Add similar protection to clear_host_pte than to set_host_vma (see #986 )
Also make the page fault handler only skip taking lock if the munmap
happened on the same cpu id
Change-Id: I6d9e68e8f8905b20bb2ccfa72848e04fe6404ab6
2019-11-28 02:07:45 +00:00
621533bbd3
Add ENABLE_PERF macros so that perf support can be toggled
...
Change-Id: Ic50c8b329af63e63579b6a60b9557344100eaac4
2019-11-26 09:15:05 +09:00
37ea770f8c
mmap: Round up map size by pagesize when specified MAP_HUGETLB
...
To match the behavior of Linux.
Change-Id: I7bcc2cb3c1e678ffc28f6b825c7a55032441dded
2019-11-14 07:24:25 +00:00
edd3ea0103
Revert "memory_range_lock: Enable interrupt when trylock fails"
...
This reverts commit 0d3ef65092 .
Reason for revert: This fix causes circular dependency with memory_range manipulation and TLB flush. See #1394 .
Change-Id: I4774e81ff300c199629e283e538c0a30ad0eeaae
2019-11-11 15:28:08 +09:00
8e4073c2ca
freeze: allow interrupts in frozen state
...
Change-Id: I1d502f828ab9f9c0e1223d021979ac3dcf4d0c25
2019-09-26 02:13:23 +00:00
ff982b8594
freeze: change freeze-thaw to normal interrupt
...
Change-Id: Ib4dbac28f0074595e92ef316945b37ef4bc18327
2019-09-26 02:13:23 +00:00
58f4593478
fork: fpregs: return error code.
...
Change-Id: I6ff150a39cd8952adad9b21d0c9f8514126ef957
2019-09-26 01:56:16 +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
0c1cae45fe
coredump: Support signal number
...
Change-Id: If220bcd0865569a566e08aa53cae748fdc6317d0
Refs: #1340
2019-08-08 13:44:15 +09:00