Commit Graph

747 Commits

Author SHA1 Message Date
Balazs Gerofi
ebcf9a0d6d mcctrl: fix a bunch of -Wframe-larger-than warnings 2016-10-21 04:54:38 -04:00
e29005
0b0aa6c0e0 Start mcklogd before McKernel to avoid deadlock
McKernel blocks forever waiting for mcklogd to retrieve kmsg when
kmsg bufer is full with boot log and mcklogd isn't running.
2016-10-19 16:40:32 +09:00
Balazs Gerofi
9705a80c82 get/set_mempolicy(): support for query/set process level policy 2016-10-16 14:01:14 +09:00
Balazs Gerofi
99a02e2941 get_mempolicy(): store policy in per-process VM structure 2016-10-16 09:10:36 +09:00
Balazs Gerofi
b88d75720f __NR_gettid: use regular offloading channel (fixes unknown PID bug) 2016-10-15 11:46:01 +09:00
Balazs Gerofi
d2b677b6da get_mempolicy(): initial implementation 2016-10-14 21:34:32 +09:00
Balazs Gerofi
994b9a19ac NUMA: expose CPU and memory info in /proc/self/status 2016-10-14 21:34:32 +09:00
Balazs Gerofi
faa929e717 NUMA: add NUMA mask to process VM structure 2016-10-14 21:34:31 +09:00
Balazs Gerofi
b068fde9cd NUMA: use IHK CPU and NUMA mappings for sysfs entries 2016-10-14 21:34:31 +09:00
Balazs Gerofi
167ea67dee NUMA: receive CPU info in array format 2016-10-14 21:34:31 +09:00
Balazs Gerofi
1e8239d72a kmalloc/pagealloc tracker: fix race condition bug 2016-10-14 21:34:31 +09:00
Balazs Gerofi
a51a0a6f13 page allocation tracker: support tracking partial deallocations 2016-10-14 21:34:31 +09:00
Balazs Gerofi
cc3f6e1a4f page_fault_process_memory_range(): fix double allocation leak 2016-10-14 21:34:31 +09:00
Balazs Gerofi
5db6c311f4 page alloc tracker: count freed pages in addr tracker objects 2016-10-14 21:34:31 +09:00
Balazs Gerofi
7176bb2a47 allow partial deallocation in page level allocation tracker 2016-10-14 21:34:30 +09:00
Balazs Gerofi
a6bd98cc02 MM: memory leak tracker for page level allocator 2016-10-14 21:34:30 +09:00
Balazs Gerofi
0d8d915d82 fix KMALLOC_MIN_SIZE macro 2016-10-14 21:34:30 +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
8c0a5a5e61 page_hash_count_pages(): report page hash size in memory stat 2016-10-14 21:34:30 +09:00
Balazs Gerofi
ffd3f53785 page_unmap(): proper locking of hash table 2016-10-14 21:34:30 +09:00
Balazs Gerofi
f39fa54c39 NUMA: default policy: allocate from CPU's NUMA node 2016-10-14 21:34:30 +09:00
Balazs Gerofi
11125b0d68 fileobj and shmemobj: delete unused variables 2016-10-14 21:34:30 +09:00
Balazs Gerofi
3ae69d1290 NUMA: process CPU NUMA information 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
f4db8b96de fileobj/shmobj: release pages correctly according to dynamic page frame management 2016-10-14 21:34:30 +09:00
Balazs Gerofi
8eb3bf3559 physical page management: eliminate static page frame array and
maintain page structures dynamically covering only file mappings.
use hash table for address <-> page structure conversion.
2016-10-14 21:34:29 +09:00
Balazs Gerofi
326a4fcee4 mem_init(): parse NUMA information 2016-10-14 21:34:29 +09:00
Balazs Gerofi
9b82f1a52c use ihk_mc_alloc/free_pages() and eliminate direct calls to low level routines 2016-10-14 21:34:29 +09:00
Ken Sato
f3da381752 ihk_mc_unmap_virtual: add flush_tlb_single
refs #778
2016-10-11 14:44:23 +09:00
Tomoki Shirasawa
e03f377326 interrupt_syscall: interrupt valid thread 2016-10-03 00:49:56 +09:00
Ken Sato
02536b7724 Merge remote-tracking branch 'remotes/origin/ikc2'
Conflicts:
	executer/kernel/mcctrl/syscall.c
It is resolved.
2016-09-27 11:48:12 +09:00
Tomoki Shirasawa
e28725884f fix debug print 2016-09-19 17:29:41 +09:00
Tomoki Shirasawa
9390fe5d2c signal: send signal to thread using thread-id. not cpu-id 2016-09-12 15:43:29 +09:00
Tomoki Shirasawa
20ea65b38c fix some vDSO bugs.
- vDSO sometimes becomes invalid.
- vDSO is not succeeded for child process.
- vDSO becomes invalid when execve.
refs #744
2016-09-04 23:13:00 +09:00
Balazs Gerofi
84665ff699 do_page_fault_process_vm(): fix error msg format that could cause another PF 2016-09-04 10:59:50 +09:00
Balazs Gerofi
bfbc94dfb0 mcctrl+mcexec: fix per-proc data allocation for fork() 2016-09-02 15:08:00 +09:00
Tomoki Shirasawa
7c562d0539 support madvise(MADV_DONTFORK) 2016-09-01 11:22:53 +09:00
Balazs Gerofi
d550bced78 kmalloc(): use macros to define size alignment 2016-08-19 12:51:28 +09:00
Balazs Gerofi
a7ee3f531b sched_setaffinity(): error handling for invalid input 2016-08-19 11:52:44 +09:00
Balazs Gerofi
b9439947a7 kmalloc(): re-implementation of memory leak tracking 2016-08-19 11:52:00 +09:00
Balazs Gerofi
3b60a95f13 kmalloc()/kfree() re-implementation 2016-08-18 21:51:36 +09:00
Balazs Gerofi
82ae6d7458 query_free_mem_interrupt_handler(): report number of free pages as kmsg 2016-08-18 14:52:05 +09:00
Balazs Gerofi
7ebc34ddcc do_fork(): fix tids memory leak; additional sanity checks 2016-08-18 14:31:52 +09:00
Balazs Gerofi
5fd68eae54 PF handler: fix up various error msgs 2016-08-18 07:31:25 +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
01d2ea1605 do_munmap(): do TLB flush per address in remote_tlb_flush_cpu_mask() 2016-08-17 15:08:30 +09:00
Balazs Gerofi
9efd568e07 do_mmap(): simplify demand paging flags; avoid zeroobj and allocate pages directly 2016-08-17 14:00:05 +09:00
Balazs Gerofi
1a207e19c2 clean up a couple of debug messages 2016-08-17 13:55:36 +09:00
Balazs Gerofi
73cf93727b clone(): use CAS for TID allocation 2016-08-16 14:18:58 +09:00
Balazs Gerofi
4410e702d9 devobj: fix memory leak for device file mapping 2016-08-16 14:17:59 +09:00