NAKAMURA Gou
d4a0b32f06
support large pages
2016-04-21 23:22:55 +09:00
NAKAMURA Gou
b3bec32e99
update_process_page_table: refactor
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
328175547f
Revert "fix REQ-37: remap_one_page: remove to check page size"
...
This reverts commit 6790126a23 .
- reverted commit should remove a 'pgsize' check in remap_one_page()
instead of a 'pgsize' check in pte_make_fileoff().
- In IA-32e, PTE format varies with page size. Therefore 'pgsize'
parameter of pte_make_fileoff() is preferable.
2016-04-21 23:22:54 +09:00
NAKAMURA Gou
41bb2ab5e6
support vdso which borrows clocksource from linux
2016-03-28 22:57:44 +09:00
NAKAMURA Gou
0c53a5ca35
add NOPHYS which means no physical memory
2016-03-28 22:57:44 +09:00
Tomoki Shirasawa
6790126a23
fix REQ-37: remap_one_page: remove to check page size
2016-03-27 14:05:00 +09:00
Tomoki Shirasawa
31595b7409
fix REQ-43
2016-03-25 12:57:31 +09:00
Tomoki Shirasawa
932a287437
fix REQ-40
2016-03-24 13:46:13 +09:00
NAKAMURA Gou
261bddb999
add a member pgshift into struct vm_range
...
pgshift indicates a page size in the range.
2016-03-23 19:04:32 +09:00
NAKAMURA Gou
832c0f9afd
refactor copy_user_ranges()
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
3f16a9443e
ptrace_report_signal: save debug regs before to send SIGCHLD to tracer
2016-03-09 22:29:51 +09:00
Tomoki Shirasawa
dbc778e4fa
support getrusage (work in progress)
2016-03-07 17:06:44 +09:00
Tomoki Shirasawa
8ebb3a4231
schedule: migration free last thread if terminated
2016-03-03 22:44:44 +09:00
Tomoki Shirasawa
863a5c5e5f
fix REQ-2, REQ-6, REQ-8
2016-02-23 16:32:17 +09:00
Tomoki Shirasawa
2c50b716fd
support setitimer/getitimer
2016-02-19 15:25:05 +09:00
Tomoki Shirasawa
eba2be8a35
support times
2016-02-18 13:14:18 +09:00
Tomoki Shirasawa
a866192db7
refactoring /proc
2016-02-10 08:11:02 +09:00
Ken Sato
c0cc6ac6db
Add skeleton for perf_event_open.
2016-02-09 14:54:53 +09:00
Tomoki Shirasawa
3a2f7b0106
clone: support CLONE_PARENT
2016-01-11 16:49:02 +09:00
Tomoki Shirasawa
75c6a94839
delete struct member 'type' from address_space structure
2016-01-06 20:17:00 +09:00
Tomoki Shirasawa
544971d665
modify for PVAS
2015-11-25 14:27:20 +09:00
Tomoki Shirasawa
eb6de9d1de
delete debug code
2015-11-13 15:10:14 +09:00
Balazs Gerofi
0eaa27291a
thread: move clear_child_tid, etc. to main structure
2015-10-29 11:01:27 +09:00
Tomoki Shirasawa
343bfbd30a
rename back status field
2015-10-22 20:26:50 +09:00
Tomoki Shirasawa
4e4f1208f7
delete unused member
2015-10-19 20:12:26 +09:00
Tomoki Shirasawa
a325a78866
refactoring to send signal
2015-10-15 17:10:02 +09:00
Tomoki Shirasawa
04e193de13
refactoring process structures
2015-10-13 23:04:08 +09:00
NAKAMURA Gou
51789fcd38
initialize idle_vm for page faluts
2015-10-01 21:08:35 +09:00
NAKAMURA Gou
8dd9175411
schedule: fix null pointer dereference
2015-09-29 19:10:00 +09:00
Balazs Gerofi
40b8587a8a
schedule(): sync CPU_FLAG_NEED_RESCHED flag with clone and migrate
2015-09-16 19:22:40 +09:00
Balazs Gerofi
c85a9b99e1
a couple of cosmetic changes of debug messages
2015-08-22 18:53:14 +09:00
Balazs Gerofi
f0ab8ec89a
sched_request_migrate(): change CPU flags atomically
2015-08-10 12:45:59 +09:00
Balazs Gerofi
f4cc82578d
check_need_resched(): no thread migration in IRQ context
2015-08-10 12:43:35 +09:00
Balazs Gerofi
9ba40dc0ff
schedule(): hold runq lock for the entire duration of context switching
...
releasing the runq lock after loading page tables but before the actual
context switch can leave execution in an inconsistent if the current
process is descheduled from an IRQ between these two steps.
this patch holds the runq lock with IRQs disabled and makes the context
switch a single atomic operation.
2015-08-10 12:37:12 +09:00
Balazs Gerofi
8d6c97ea5c
schedule(): disable auto thread migration
2015-08-07 16:07:31 +09:00
Balazs Gerofi
0a0e2c04a0
support for dynamically toggling time sharing when CPU is oversubscribed
2015-08-07 08:51:50 +09:00
Balazs Gerofi
aa191b87d3
schedule(): use XSAVE/XRSTOR and swap floating point registers in context switch
2015-08-07 08:41:00 +09:00
Balazs Gerofi
d5c243571f
cpu_clear_and_set(): atomic CPU mask update in migration code
2015-08-06 10:49:55 +09:00
Balazs Gerofi
328e69a335
schedule(): do not preempt while holding spinlocks or while in offloaded syscall
2015-08-06 10:36:13 +09:00
Balazs Gerofi
b77755d0f7
obtain_clone_cpuid(): always start from CPU 0 and fill in cores linearily
2015-07-28 20:20:47 +09:00
Balazs Gerofi
d7bae14707
TEMPORARY: schedule(): move threads when core is explicitly oversubscribed
2015-07-28 20:12:58 +09:00
Balazs Gerofi
4e58d08f5c
schedule_timeout(): give a chance to other process in spin sleep if CPU core is oversubscribed
2015-07-28 20:06:56 +09:00
Balazs Gerofi
9b1e691588
fix thread migration code (i.e., sched_setaffinity())
...
- moved migration code into idle() process and updated schedule() to detect
when a thread has moved to another CPU in order to avoid doing housekeeping
on behalf of the original one
- start CPU head from core 0
- keeps track of nested interrupts
2015-07-24 20:09:17 +09:00
Balazs Gerofi
3988b0fc61
keep track of IRQ context and don't do thread migration there
2015-07-23 16:56:58 +09:00
Tomoki Shirasawa
1bc84d3feb
modify to copy credentials
2015-07-13 15:29:26 +09:00
Balazs Gerofi
7647c99cc2
do_migrate(): disable IRQ while holding migq_lock to avoid deadlocking with reschedule interrupts
2015-07-09 15:23:28 +09:00
Balazs Gerofi
4ebe778ede
vm->exiting: deal with exit_group() and concurrent page faults
2015-06-25 16:04:04 +09:00
Tomoki Shirasawa
7d5a68be1b
add PID and GID to /proc/pid/status
...
add /proc/pid/cmdline
refs #445
refs #447
2015-05-18 17:45:37 +09:00