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
NAKAMURA Gou
bb3756dc74
add fileoff-type PTE
...
fileoff-type PTE holds a file offset which the page data should be
loaded from.
refs #21
2014-06-30 17:33:50 +09:00
NAKAMURA Gou
d2e29bf598
add visit_pte_range()
...
refs #21
refs #22
2014-06-30 17:33:43 +09:00
Balazs Gerofi bgerofi@riken.jp
badb450153
more detailed report in memory management error path
2014-05-22 17:27:39 +09:00
NAKAMURA Gou
99dec9b805
add parameters to arch_vrflag_to_ptattr()
...
for other architectures and future use
refs #18
2014-05-07 21:24:45 +09:00
NAKAMURA Gou
769cf79bf8
move vrflag_to_ptattr() to arch/x86/kernel/memory.c
...
refs #18
2014-05-07 21:24:45 +09:00
Balazs Gerofi bgerofi@riken.jp
0285c99c9c
use PT_PHYSMASK on last level PTE entries to avoid returning invalid physical address
2014-04-15 20:21:07 +09:00
NAKAMURA Gou
56f0d3b29f
support IA-32e's "execute disable bit"
2014-04-11 14:59:47 +09:00
NAKAMURA Gou
b31a1b6db2
add PTATTR_NO_EXECUTE
2014-04-11 14:59:47 +09:00
NAKAMURA Gou
f60b37ea1b
use 'enum ihk_mc_pt_attribute' instead of 'int'
2014-04-11 14:59:46 +09:00
NAKAMURA Gou
f5b4057074
add vsyscall
...
- getcpu() is not implemented. It will cause SIGILL.
- gettimeofday() and time() are implemented with syscall.
2014-01-24 20:18:36 +09:00
Tomoki Shirasawa
8411f353fe
signal part 3 (EFAULT)
2014-01-13 10:52:29 +09:00
Masamichi Takagi
2f89e26ac0
add modification history entry to the following files,
...
mckernel/lib/include/*.h
mckernel/arch/x86/elfboot/*
mckernel/arch/x86/kboot/main.c
mckernel/arch/x86/kernel/*
mckernel/lib/page_alloc.c
mckernel/lib/string.c
mckernel/lib/include/ihk/*
except
mckernel/arch/x86/kernel/include/signal.h
mckernel/arch/x86/tools/mcreboot-attached-mic.sh.in
mckernel/arch/x86/kernel/include/syscall_list.h
mckernel/arch/x86/kernel/syscall.c
.
2013-11-14 18:30:06 +09:00
Masamichi Takagi
384328c6bc
add copyright notice to the following files,
...
mckernel/lib/include/*.h
mckernel/arch/x86/elfboot/*
mckernel/arch/x86/kboot/main.c
mckernel/arch/x86/kernel/*
mckernel/lib/page_alloc.c
mckernel/lib/string.c
mckernel/lib/include/ihk/*
except
mckernel/arch/x86/kernel/include/signal.h
mckernel/arch/x86/tools/mcreboot-attached-mic.sh.in
mckernel/arch/x86/kernel/include/syscall_list.h
mckernel/arch/x86/kernel/syscall.c
.
2013-11-14 17:09:58 +09:00
NAKAMURA Gou
bbbc6e1570
add shared mapped file (in progress)
...
implemented:
- Pages can be shared between maps.
- A change made to a map is written to the file, at munmap().
not yet implemented:
- VM operation during page IO execution.
Because page IO is executed with VM's lock.
- Page IO, which does not change a file size with any case.
When munmap() races with truncate(), the file size may be changed
illegally.
2013-11-11 18:18:33 +09:00
NAKAMURA Gou
27172ad413
support private mapped file
2013-10-15 12:30:41 +09:00
NAKAMURA Gou
480f6d4c2f
rewrite page_fault_handler()
2013-08-08 12:43:00 +09:00
NAKAMURA Gou
78d9d3fcd2
Revert "trial implementation of private file mapping"
...
This reverts commit abe57218c4 .
2013-07-26 16:44:39 +09:00
NAKAMURA Gou
abe57218c4
trial implementation of private file mapping
...
for review only. will soon be reverted.
2013-07-26 14:40:12 +09:00
NAKAMURA Gou
334662b7fe
implement sys_mprotect()
2013-07-18 09:25:58 +09:00
NAKAMURA Gou
2aa5194958
rewrite sys_mmap() as sys_new_mmap()
2013-07-10 13:11:19 +09:00
NAKAMURA Gou
630170fb6a
add ihk_mc_allocate_aligned_pages()
2013-07-10 13:11:18 +09:00
NAKAMURA Gou
96f02a1d08
delete the access restrictions of whole page table.
...
access restrictions will be set on individual pages.
2013-06-19 12:07:40 +09:00
NAKAMURA Gou
ff5ee67d06
remove PTATTR_USER from the decision of ihk_mc_ap_flag in __set_pt_page
2013-06-19 12:07:40 +09:00
NAKAMURA Gou
5fc0d90b7d
add ihk_mc_pt_clear_range()
2013-06-12 11:49:19 +09:00
NAKAMURA Gou
80538d8800
fix a wrong decision in __clear_pt_page()
2013-06-03 14:39:07 +09:00
Balazs Gerofi bgerofi@riken.jp
4a27a65cb0
resolved merge conflicts with futex code
2013-06-02 16:42:08 +09:00
Tomoki Shirasawa
2627d4df55
add PTATTR_FOR_USER flag to enum ihk_mc_ap_flag
2013-06-02 13:57:44 +09:00
Tomoki Shirasawa
5d9efa7241
add rollback when ihk_mc_pt_set_page returns error
2013-06-02 13:54:38 +09:00
NAKAMURA Gou
d540deab17
change 'pa_ops' to file scope variable
2013-05-28 13:40:19 +09:00
Tomoki Shirasawa
da3965be11
Merge branch 'master' of postpeta.pccluster.org:mckernel
...
Conflicts:
kernel/host.c
kernel/process.c
lib/include/ihk/mm.h
2013-05-28 12:49:13 +09:00
Tomoki Shirasawa
bb4caccf98
add memory allocation check
2013-05-28 12:06:41 +09:00