40b8587a8a
schedule(): sync CPU_FLAG_NEED_RESCHED flag with clone and migrate
2015-09-16 19:22:40 +09:00
e7b1115572
mcreboot-smp-x86.sh: introduction of ihk_ikc_irq_core argument
2015-09-14 17:30:25 +09:00
e1a01803d0
disable demand paging on ANONYMOUS mappings unless anon_on_demand kernel argument is passed
2015-09-14 17:26:37 +09:00
69f4b0e1ad
gettimeofday()/nanosleep(): check arguments, return on pending signal
2015-09-14 17:05:30 +09:00
0909a5bed5
tracee context is broken when tracee call execve
2015-09-03 10:05:25 +09:00
9dd224385e
When SIGSEGV occurred on a tracee process, a tracee process freezes.
2015-09-01 17:37:56 +09:00
4176c59fd3
using d_path for solution to file path.
2015-08-28 13:01:34 +09:00
afeee5432f
When envp is NULL, execve is delayed.
2015-08-28 13:00:45 +09:00
9ae5bcf46e
gettimeofday(): an implementation based on CPU invariant TSC support
2015-08-24 23:53:56 +02:00
b8f166e608
mcreboot-smp-x86.sh: handle resource allocation after unloading; mcstop+release-smp-x86.sh
2015-08-22 18:55:53 +09:00
c85a9b99e1
a couple of cosmetic changes of debug messages
2015-08-22 18:53:14 +09:00
7c816a6b73
an implementation of the Mellor-Crummey Scott (MCS) lock
2015-08-20 15:26:52 +09:00
5a0cd3f53f
ptrace_detach when exiting
...
refs #590
2015-08-18 18:03:09 +09:00
9fa62adfe7
execve(): stay compliant with locked context switching
2015-08-10 14:18:11 +09:00
f0ab8ec89a
sched_request_migrate(): change CPU flags atomically
2015-08-10 12:45:59 +09:00
f4cc82578d
check_need_resched(): no thread migration in IRQ context
2015-08-10 12:43:35 +09:00
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
8d6c97ea5c
schedule(): disable auto thread migration
2015-08-07 16:07:31 +09:00
386f59000a
mcreboot-smp-x86.sh.in: grant real user rw permission on /dev/mcos*
2015-08-07 13:33:44 +09:00
215cd370a1
ap_init(): clean up AP boot kernel messages
2015-08-07 10:57:59 +09:00
0a0e2c04a0
support for dynamically toggling time sharing when CPU is oversubscribed
2015-08-07 08:51:50 +09:00
aa191b87d3
schedule(): use XSAVE/XRSTOR and swap floating point registers in context switch
2015-08-07 08:41:00 +09:00
d5c243571f
cpu_clear_and_set(): atomic CPU mask update in migration code
2015-08-06 10:49:55 +09:00
328e69a335
schedule(): do not preempt while holding spinlocks or while in offloaded syscall
2015-08-06 10:36:13 +09:00
b77755d0f7
obtain_clone_cpuid(): always start from CPU 0 and fill in cores linearily
2015-07-28 20:20:47 +09:00
d7bae14707
TEMPORARY: schedule(): move threads when core is explicitly oversubscribed
2015-07-28 20:12:58 +09:00
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
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
3988b0fc61
keep track of IRQ context and don't do thread migration there
2015-07-23 16:56:58 +09:00
54eb345847
settid(): prevent modifying tid after thread migration
2015-07-23 16:51:24 +09:00
bbe7aef95b
fix calling do_signal (argument lacked)
2015-07-17 10:18:43 +09:00
1ff4cf68c2
support SA_RESTART flag and restart syscall
2015-07-16 16:33:14 +09:00
1bc84d3feb
modify to copy credentials
2015-07-13 15:29:26 +09:00
f7d78c8b7d
sched_getaffinity(): return EINVAL for 0 lenght request (fixes LTP sched_getaffinity01)
2015-07-10 11:00:43 +09:00
7647c99cc2
do_migrate(): disable IRQ while holding migq_lock to avoid deadlocking with reschedule interrupts
2015-07-09 15:23:28 +09:00
43a774fbfc
sched_setaffinity(): undo target core change, avoid abort on length mismatch
2015-07-09 11:00:26 +09:00
a029bcac37
mcreboot-smp-x86: find unused IRQ line and pass start vector to ihk_smp_x86.ko
0.9.0
2015-07-07 09:07:16 +09:00
bd913c503b
sched_setaffinity(): find an actual target core
2015-07-03 11:59:52 +09:00
e838affde8
fix to compile error on CentOS 7
2015-07-02 17:08:35 +09:00
59ee251e1c
fix /proc/pid/mem, /proc/pid/status, /proc/pid/cmdline
2015-07-02 00:22:35 +09:00
fa79db3bcc
fix out of tree build
2015-07-01 23:58:50 +09:00
b7c5cba361
fix to compile on CentOS 6
2015-07-01 23:57:40 +09:00
382614ddae
pstate: use MSR_NHM_TURBO_RATIO_LIMIT as maximum single-core turbo ratio
2015-07-01 22:18:38 +09:00
aa959c6b34
temporary fix for CentOS 6.x
2015-06-30 18:19:53 +09:00
aabc3d386d
support a function to execute mcexec automatically.
2015-06-30 17:47:01 +09:00
4ebe778ede
vm->exiting: deal with exit_group() and concurrent page faults
2015-06-25 16:04:04 +09:00
fbb776e4fb
cpu init: support for no_turbo kernel argument
2015-06-25 12:18:27 +09:00
41b85281a4
mcctrl: introduction of RUS page hash to handle page refcounts properly
2015-05-31 15:42:39 +09:00
5532e3c663
mcreboot script for new IHK SMP-x86 I/F
2015-05-26 14:41:28 +09:00
2af2b1205f
temporary fix for setfsuid/setfsgid
2015-05-19 06:27:59 +09:00