Dominique Martinet
d4cd756a91
x86/cpu.c: unhandled page fault: print pre-fault stack
...
Do basic manual unwinding and print raw stack addresses, with a
suggested invocation of addr2line to pretty-print the result.
2017-10-13 10:02:11 +09:00
Dominique Martinet
4d4279121b
process/vm; replace vm_range list by a rbtree
...
This replaces the chained list used to keep track of all memory ranges
of a process by a standard rbtree (no need of interval tree here
because there is no overlap)
Accesses that were done directly through vm_range_list before were
replaced by lookup_process_memory_range, even full list scan (e.g.
coredump).
The full scans will thus be less efficient because calls to rb_next()
will not be inlined, but these are rarer calls that can probably afford
this compared to code simplicity.
The only reference to the actual backing structure left outside of
process.c is a call to rb_erase in xpmem_free_process_memory_range.
v2: fix lookup_process_memory_range with small start address
v3: make vm_range_insert error out properly
Panic does not lead to easy debug, all error paths
are handled to just return someting on error
v4: fix lookup_process_memory_range (again)
That optimistically going left was a more serious bug than just
last iteration, we could just pass by a match and continue down
the tree if the match was not a leaf.
v5: some users actually needed leftmost match, so restore behavior
without the breakage (hopefully)
2017-10-13 10:00:27 +09:00
Ken Sato
a1a2900606
ptrace: Fix the timing of save_fp_regs, and Add copy fp_regs to child in clone_thread
...
refs #702
2017-09-27 17:02:30 +09:00
Masamichi Takagi
79b977ac06
Check xgetbv availability before use for machines without it (i.e. KVM)
2017-09-26 19:31:34 +09:00
Masamichi Takagi
daa7526127
rusage and ihklib: Fix out-of-memory reporting and cleanup
...
1. Fix OOM: Count memory usage only when allocation succeeded
2. Fix OOM: Make user allocation fail when memory is running out
3. Fix OOM: Move rusage_init() before numa_init()
4. Cleanup: Rename ihkconfig/ihkosctl functions
5. Cleanup: Pass event type to eventfd()
6. Cleanup: arch/.../rusage.h --> arch/.../arch_rusage.h
2017-09-20 15:11:57 +09:00
Dominique Martinet
230272438f
init_fpu: only call xgetbv if we have XSAVE cpuid
...
xgetbv crashes on cpu without avx, the XSAVE bit seems to indicate
that it is ok to call xgetbv
2017-09-12 18:27:28 +09:00
Takayuki Okamoto
9989f41fd3
add arm64 support
...
- add arm64 dependent codes with GICv3 and SVE support
- fix bugs based on architecture separation requests
2017-09-05 15:06:27 +09:00
Masamichi Takagi
86dedc32fa
Eliminate Japanese comments
2017-07-15 20:04:16 +09:00
Balazs Gerofi
dd2ef89997
SMP: generic function call facility for CPU sets
2017-05-28 07:41:48 +09:00
Balazs Gerofi
ba7edf1981
move out local IRQ vector definitions to shared header
2017-05-28 07:36:21 +09:00
Balazs Gerofi
32c8f6192d
unhandled_page_fault(): print registers for kernel mode PF
2017-05-23 02:42:05 +09:00
Balazs Gerofi
21373338cc
mcctrl: IHK CPU register manipulation implementation
2017-05-20 12:38:14 +09:00
Katsukura
ba58054c9d
create rusage branch.
2017-05-19 10:30:36 +09:00
Ken Sato
d66af42f7b
Revert "IKC: separate IRQ between Master-channel and Regular-channel"
...
This reverts commit 3c98b9410966ceebe187ebae1038317b628fbb03.
2017-05-19 10:26:30 +09:00
Ken Sato
65dc3440cb
IKC: separate IRQ between Master-channel and Regular-channel
2017-05-19 10:26:30 +09:00
Balazs Gerofi
9992fe0d72
mcctrl: support remote CPU MSR read/write operations
2017-05-05 00:01:43 +09:00
Katsukura
8c9b207557
configure : add option --enable-rusage
2017-04-27 14:00:59 +09:00
Katsukura
3fe2257929
create rusage branch.
2017-03-15 23:22:51 +09:00
Balazs Gerofi
61fc4c5e55
show_context_stack(): fix warning
2016-12-07 11:42:09 +09:00
Balazs Gerofi
fad73cacc1
x86: display call stack for IRQ 133 (for debug)
2016-12-07 11:32:02 +09:00
Balazs Gerofi
87d36a7752
mcreboot-smp-x86: -t to enable turbo boost
2016-12-05 18:10:20 +09:00
Ken Sato
1130cafe41
ptrace: fixed for threads.
2016-11-28 11:19:30 +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
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
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
Yoichi Umezawa
b5e4459a34
support AVX-512 registers
2016-08-30 18:39:33 +09:00
Balazs Gerofi
5fd68eae54
PF handler: fix up various error msgs
2016-08-18 07:31:25 +09:00
Tomoki Shirasawa
5c190beb04
save fpregs when to call sighandler
...
refs #50
2016-07-05 15:26:00 +09:00
Ken Sato
dd37443fc7
PAPI support: performance counter's overflow.
...
and support mckfd fcntl.
2016-06-24 13:50:12 +09:00
Balazs Gerofi
14ec92518e
KVM support: detect KVM and avoid touching unimplemented MSRs
2016-05-26 01:11:08 +09:00
Tomoki Shirasawa
9b35eaca42
remote_flush_tlb_cpumask() dead locking
...
refs #728
2016-05-10 14:02:25 +09:00
Ken Sato
130b1f4327
update PAPI support. other process and child process monitoring.
2016-04-26 19:01:47 +09:00
NAKAMURA Gou
1bb948f43b
hwloc support
2016-04-11 22:25:27 +09:00
NAKAMURA Gou
2a1823d52c
vdso: set enable bit of pvti_msr
2016-04-11 22:20:39 +09:00
NAKAMURA Gou
89943dc5ba
vdso: set physical address at pvti_msr
2016-04-11 22:20:39 +09:00
NAKAMURA Gou
fceb02a44a
vdso: add zero clear for pvti
2016-04-11 22:20:38 +09:00
NAKAMURA Gou
7298d8e179
vdso: correct pvti array element type
...
struct pvclock_vsyscall_time_info <-- struct pvclock_vcpu_time_info
2016-04-11 22:20:38 +09:00
NAKAMURA Gou
41bb2ab5e6
support vdso which borrows clocksource from linux
2016-03-28 22:57:44 +09:00
NAKAMURA Gou
a587c8f5e5
x86: encode cpu# in IA32_TSC_AUX and size of GDTe#15
2016-03-28 22:57:44 +09:00
Tomoki Shirasawa
31595b7409
fix REQ-43
2016-03-25 12:57:31 +09:00
Yoichi Umezawa
593cf98015
add ACSL annotation
2016-03-16 15:42:32 +09:00
NAKAMURA Gou
1aac2c8e23
add CPU timer initialization (refs #402 )
...
There is no actual initialization in x86 now.
The initialization rely on hardware reset and Linux initialization.
2016-03-11 19:20:37 +09:00
NAKAMURA Gou
70e8dd7979
remove initialization of TSC (refs #362 )
2016-03-11 19:17:29 +09:00
Tomoki Shirasawa
c4c5e435cc
fix REQ-12
2016-02-24 20:57:45 +09:00
Tomoki Shirasawa
27c3ed7e96
remove debug print
2016-02-21 15:17:42 +09:00
Tomoki Shirasawa
e2b28da32f
signal handler support gdb stepi command
2016-02-21 14:55:34 +09:00
Tomoki Shirasawa
eba2be8a35
support times
2016-02-18 13:14:18 +09:00
Tomoki Shirasawa
f7b5b48266
support x2apic
2016-01-06 13:53:02 +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