Commit Graph

752 Commits

Author SHA1 Message Date
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
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
f4162dff52 some signals set siginfo.si_code 2015-04-14 15:11:36 +09:00
a0d909af75 add supports for dump analyzer 2015-03-31 12:59:53 +09:00
63669b7f71 support /proc/pid/status for LTP mmap14 2015-03-28 14:20:07 +09:00
4946964ed0 update copyright notices 2015-03-27 14:50:09 +09:00
5f19842a6a support for process_vm_readv()/process_vm_writev() 2015-03-25 19:44:56 +09:00
9271d5346d add ACSL annotation to cpu.c 2015-03-25 15:54:08 +09:00
7bba05cfa4 Revise use of iov_base in ptrace_read_regset() and ptrace_write_regset(). 2015-03-20 20:33:40 +09:00
c2a1f933e8 Set tid (instead of pid) for ptrace event message of
PTRACE_EVENT_{FORK,VFORK,CLONE,VFORKDONE}.
Specify 2nd argument as pid (instead of -1) of function findthread_and_lock(),
to find tracee process in ptrace subroutines.
(gdb testsuite gdb.base/watch_thread_num.exp)
2015-03-20 13:22:00 +09:00
055769254d implement mlockall()/munlockall() for LTP syscall 2015-03-19 16:46:31 +09:00
786ae83380 add arch-dependent mman.h 2015-03-19 16:36:57 +09:00
8c662c83be implement mincore(2) for LTP 2015-03-19 16:32:03 +09:00
4698bc40c2 implement System V shared memory for LTP syscalls 2015-03-19 16:21:18 +09:00
f5d935b703 support signalfd4 step1 2015-03-18 17:35:43 +09:00
d53865ac5f change to check sequence of kill syscall, check sig num zero after uid checking 2015-03-18 12:59:05 +09:00
8934eb91a4 kill syscall check uid 2015-03-17 15:04:36 +09:00
ed6d94a358 syscall slowdown when repeat fork/exit/wait (LTP fork13) 2015-03-11 16:09:59 +09:00
fa923da0e3 add host PTE cleaning to execve(). refs #377
This removes a cause of LTP gethostid01's wrong behavior.
2015-03-10 18:23:50 +09:00
1f8265efbc check _PAGE_PWT and _PAGE_PCD directly instead of _PAGE_CACHE_WC 2015-03-07 02:12:48 +09:00
b553de7435 supports PTRACE_GETREGSET, PTRACE_SETREGSET.
supports PTRACE_GETFPREGS, PTRACE_SETFPREGS.

refs #421
2015-03-06 19:18:32 +09:00
6a82412d64 modify procfs to read inactive thread's files
However, the following files can be read only if the corresponding
thread is in active.
- /proc/<PID>/mem
- /proc/<PID>/task/<TID>/mem

refs #371
2015-03-05 21:41:24 +09:00