Commit Graph

89 Commits

Author SHA1 Message Date
Balazs Gerofi
4c0f401424 move_pages(): parallel implementation v1 2017-07-08 18:36:05 +09:00
Balazs Gerofi
209748d913 visit_pte_range(): visit L1 PTEs but don't free for MF_PREMAP files 2017-07-08 18:36:04 +09:00
Balazs Gerofi
9b5ccb5a33 Pre-map file mappings from /dev/shm (--mpol-shm-premap mcexec argument) 2017-05-23 20:00:06 +09:00
Yoichi Umezawa
c38d536aaa xpmem: porting xpmem v2.6.3
implement xpmem_get, xpmem_release, xpmem_attach, xpmem_detach
2017-03-29 18:20:53 +09:00
Masamichi Takagi
1076010de4 Boundary check in early_alloc_pages() 2017-03-04 17:21:57 +09:00
Balazs Gerofi
bd47b909bf futex(): spin wait when CPU not oversubscribed and fix lost wake-up bug 2017-01-13 08:43:25 +09:00
Balazs Gerofi
1ff0afe6fb devobj/fileobj: do not try to free memory for device file mappings 2017-01-08 14:16:10 +09:00
Balazs Gerofi
40d75baca2 ihk_mc_ap_flag: rewrite flag type, intro for denoting user level allocations 2016-12-30 19:19:34 +09:00
Balazs Gerofi
3e1f154412 patch_process_vm(): eliminate kprintfs from error free code path 2016-12-25 17:18:20 +09:00
Balazs Gerofi
b0f4ae4890 ihk_mc_pt_set_pte(): double check phys address alignment 2016-12-07 11:23:45 +09:00
Balazs Gerofi
7070094a31 ihk_mc_pt_print_pte(): handle large pages correctly 2016-12-07 11:13:53 +09:00
Ken Sato
1130cafe41 ptrace: fixed for threads. 2016-11-28 11:19:30 +09:00
Balazs Gerofi
787d34f650 introduction of ihk_mc_pt_virt_to_phys_size() 2016-11-23 08:40:33 +09:00
Balazs Gerofi
f4df713846 munmap(): fix memory leak in non page backed mappings 2016-10-14 21:34:31 +09:00
Balazs Gerofi
8f4f68b877 eliminate arch_alloc_page() and move ihk_mc_alloc_pages() to arch independent code 2016-10-14 21:34:30 +09:00
Balazs Gerofi
2929fbb803 NUMA: support multiple physical allocators 2016-10-14 21:34:30 +09:00
Balazs Gerofi
a7ee3f531b sched_setaffinity(): error handling for invalid input 2016-08-19 11:52:44 +09:00
Balazs Gerofi
7ebc34ddcc do_fork(): fix tids memory leak; additional sanity checks 2016-08-18 14:31:52 +09:00
Balazs Gerofi
f5857cfc9e MM: use ihk_mc_{alloc/free}_pages() everywhere and fix free_pages() on kmalloc()ed object bug 2016-08-17 18:02:05 +09:00
Balazs Gerofi
1a207e19c2 clean up a couple of debug messages 2016-08-17 13:55:36 +09:00
Balazs Gerofi
57690479bd read/patch_process_vm(): map non-LWK physical addresses properly 2016-07-22 20:48:54 +09:00
Balazs Gerofi
4c8f583c0c split_large_page(): avoid panic when splitting "non-mapped" large pages 2016-07-14 17:11:52 +09:00
Balazs Gerofi
648bacc90f device file mappings: communicate map flags and fault missing translations 2016-06-24 12:44:59 -07:00
NAKAMURA Gou
d4a0b32f06 support large pages 2016-04-21 23:22:55 +09:00
NAKAMURA Gou
2048980820 remove ihk_mc_pt_alloc_range() 2016-04-21 23:22:54 +09:00
NAKAMURA Gou
176f6d23a9 ihk_mc_pt_virt_to_pagemap: refactor 2016-04-21 23:22:54 +09:00
NAKAMURA Gou
c760a01a79 add pte_get_attr() 2016-03-28 22:57:44 +09:00
NAKAMURA Gou
8f7b9072ea refactor some copyin/copyout functions
- copy_from_user()
- getlong_user()
- getint_user()
- copy_to_user()
- setlong_user()
- setint_user()
2016-03-23 19:04:32 +09:00
NAKAMURA Gou
4595aa3079 pte_visitor_t(): change "pgsize" into "pgshift" 2016-03-23 19:04:32 +09:00
Tomoki Shirasawa
eb0700359b fix REQ-36 2016-03-10 10:33:38 +09:00
Tomoki Shirasawa
dbc778e4fa support getrusage (work in progress) 2016-03-07 17:06:44 +09:00
NAKAMURA Gou
f093786bec x86: populating PML4e and PDPTe is now lock-free 2016-01-25 09:17:06 +09:00
Tomoki Shirasawa
04e193de13 refactoring process structures 2015-10-13 23:04:08 +09:00
NAKAMURA Gou
4946964ed0 update copyright notices 2015-03-27 14:50:09 +09:00
Balazs Gerofi
bf12a5c45e Introduction of write-combined memory type mappings.
Introduction of VR_WRITE_COMBINED, PTATTR_WRITE_COMBINED and modification
to the memobj's get_page() interface so that Linux communicates back mapping
flags (such as write-combined).
2015-03-05 16:03:21 +09:00
NAKAMURA Gou
2eac58aab3 add patch_process_vm(). (in progress)
This function patches specified range of specified user space even if
the range is not writable.

refs #401
2015-03-04 12:00:51 +09:00
NAKAMURA Gou
22d8d169b6 change copy-out routines
- restrict copy_to_user() to only current process.
- add write_process_vm() to write specified process space.
2015-03-04 11:29:16 +09:00
NAKAMURA Gou
063fa963c3 change copy-in routines
- restrict copy_from_user() to only current process.
- add read_process_vm() to read specified process space.
2015-03-04 11:29:15 +09:00
NAKAMURA Gou
a6488adcc1 change parameter type of ihk_mc_pt_virt_to_phys()
- add type qualifier 'const' to virtual address parameter.
  that is, change parameter 'virt' from       'void *'
                                     to 'const void *'
2015-03-04 11:29:15 +09:00
bgerofi@riken.jp
ff47261337 receive trampoline addr via parameter of arch_start() 2014-12-25 11:03:00 +09:00
NAKAMURA Gou
55f7ee1526 fix a warning
| mckernel/kernel/../arch/x86/kernel/memory.c: In function '__set_pt_page':
| mckernel/kernel/../arch/x86/kernel/memory.c:367:
|     warning: 'init_pt_lock_flags' may be used uninitialized in this function
2014-12-22 17:03:32 +09:00
NAKAMURA Gou
0942bf0ce0 make dkprintf() evaluate its parameters always
Parameters of dkprintf() should be evaluated even if dkprintf() is
disabled.  Because this enables to find expression of parameter obsolete
and to avoid unnecessary compiler warnings such as "unused variable".
2014-12-22 16:58:03 +09:00
bgerofi@riken.jp
d4ba4dc8b3 introduction of mckernel_procfs_file_operations; fix /proc/self path resolution;
implementation of /proc/self/pagemap (LTP mmap12)
2014-12-15 12:46:05 +09:00
Masamichi Takagi
7fcd36fbd3 Lock when setting PTE for kernel virual address
We didn't have any lock variable to guard the manipulation of a PTE for
kernel virual address space. Note that we have one for user virtual
address space.
2014-10-08 14:06:17 +09:00
NAKAMURA Gou
aaa466ed05 Revert "ihk_mc_pt_print_pte で PTE を表示するようにした"
This reverts commit 9a1d535f5c.
2014-09-17 19:59:34 +09:00
NAKAMURA Gou
7e12f0db72 Revert "テスト支援コード"
This reverts commit 054cb2ada2.
2014-09-17 19:59:32 +09:00
NAKAMURA Gou
054cb2ada2 テスト支援コード
- vm_range_list のテスト支援コード
- vm_range 一致確認用関数追加
  できれば、指定範囲内の変更を無視させたいのだが、
  指定範囲内の変更のために split されたエントリを無害と判断できない
- page table のテスト支援コード
2014-09-17 19:46:48 +09:00
NAKAMURA Gou
9a1d535f5c ihk_mc_pt_print_pte で PTE を表示するようにした 2014-09-17 19:46:45 +09:00
Balazs Gerofi bgerofi@riken.jp
101a0f6e4a remote TLB invalidation code for multi-threaded applications (e.g., during munmap()) 2014-07-22 12:24:07 +09:00
NAKAMURA Gou
11bb334bd4 support mremap(2)
fixes #22
2014-07-02 15:30:52 +09:00