aa191b87d3
schedule(): use XSAVE/XRSTOR and swap floating point registers in context switch
2015-08-07 08:41:00 +09:00
4946964ed0
update copyright notices
2015-03-27 14:50:09 +09:00
ea5681232e
x86 Page Attribute Table (PAT) MSR support.
...
Reconfigure PAT to permit write-combining memory type to be assigned
on a page-by-page basis. Changes PWT and PCD bit combinations in page
table entries so that they correspond to the following format:
PAT
|PCD
||PWT
|||
000 WB Write Back (WB)
001 WC Write Combining (WC)
010 UC- Uncached (UC-)
011 UC Uncacheable (UC)
2015-03-05 16:03:20 +09:00
e6011be1af
create area for to save fp regs
...
refs #421
2015-03-05 12:18:46 +09:00
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
e4f47df3c3
initialize pstate, turbo mode and power/performace bias MSR registers
...
MSR_IA32_MISC_ENABLE, MSR_IA32_PERF_CTL and MSR_IA32_ENERGY_PERF_BIAS
are responsible for performance settings, this change enables McKernel
to perform on par with Linux when running the fwq benchmark.
2015-02-27 11:29:11 +09:00
b66b950129
add x86_sregs into x86_user_context
...
x86_sregs contains the registers which are included in user_regs_struct
but not included in x86_basic_regs.
2015-02-26 17:43:10 +09:00
4aa8ba2eef
sort x86_basic_regs into user_regs_struct's order
2015-02-26 17:43:10 +09:00
fab2c2aa97
wrap x86_regs with x86_user_context
...
and, rename x86_regs to x86_basic_regs.
2015-02-26 17:43:10 +09:00
8cdf70c500
Enable AVX extensions for processors that support it.
2015-02-12 17:51:50 -08:00
bd5f43b119
support PTRACE_SINGLESTEP.
...
support debug/int3 exception.
2015-01-29 15:48:05 +09:00
c3ade864d9
fix PTRACE_PEEKUSER, PTRACE_POKEUSER, PTRACE_GETREGS.
...
support PTRACE_SETREGS.
In struct process, add 'unsigned long *ptrace_debugreg', instead of 'struct user *userp'.
debug registers are read/written from/to ptrace_debugreg, save/restore in schedule().
most general registers are proc->uctx.
fs_base is proc->thread.tlsblock_base.
gs_base,ds,es,fs,gs and orig_rax are uncompleted.
other members in 'struct user' are ignored, same as Linux implementation.
refs #257
refs #373
refs #263
2015-01-29 14:08:38 +09:00
d46110b4d9
support PTRACE_DETACH.
...
change getppid() to use proc->ftn->ppid_parent->pid, for ptraced process.
refs #280
2015-01-08 12:39:52 +09:00
35b8716966
push/pop r12,r13 and r14 as well when entering/leaving kernel space
2014-07-15 18:03:44 +09:00
31a605f94b
push/pop r15 when entering/leaving kernel space (fix for bug #53 : r15 wasn't propagated during fork())
2014-07-10 13:53:12 +09:00
604d1da50f
change macro name: PF_DONTCOW --> PF_POPULATE
...
refs #18
2014-04-25 11:19:21 +09:00
3ce94072b4
save/restore rbp when entering/leaving kernel (required for fork() in glibc)
2014-04-02 14:02:20 +09:00
f0a52d4519
implement mmap(MAP_POPULATE)
...
populate_process_memory() function is not efficient,
because whether every small page is present is checked.
2014-01-27 18:50:38 +09:00
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
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
27172ad413
support private mapped file
2013-10-15 12:30:41 +09:00
78d9d3fcd2
Revert "trial implementation of private file mapping"
...
This reverts commit abe57218c4 .
2013-07-26 16:44:39 +09:00
abe57218c4
trial implementation of private file mapping
...
for review only. will soon be reverted.
2013-07-26 14:40:12 +09:00
4693789608
change function names
2012-12-17 16:15:05 +09:00
158903c7b6
modify file names and create directories
2012-12-17 15:39:24 +09:00