Matheus
40bbf217ee
kernel: profiling infrastructure
2025-12-05 18:19:42 -03:00
monkuous
d301ec6955
kernel: add xsave support
2025-11-15 23:20:05 +01:00
Matheus
accad4d70a
mmu: enable global pages
2025-09-07 00:05:36 -03:00
Matheus
2fa040096c
slab: rewrite slab allocator
2025-09-04 22:55:19 -03:00
Matheus
3f03b4a467
mmu: make shootdown data per cpu
2025-08-31 23:27:03 -03:00
Matheus
a11406a600
scheduler: load balancing initial implementation
2025-08-25 22:41:20 -03:00
Matheus
a3f376c1d6
fb: map as WC
2025-08-24 10:33:24 -03:00
Matheus
7a890ac41d
scheduler: continue work
2025-08-23 13:54:45 -03:00
Matheus
c024e1abb7
scheduler: little bit of cleanup
2025-08-20 22:15:09 -03:00
Matheus
136c86354c
scheduler: continue rework
2025-08-20 22:00:25 -03:00
Matheus
607566531d
kernel: rework init
2025-08-14 20:25:43 -03:00
Matheus
ab26020935
mmap: support MAP_FIXED_NOREPLACE
2025-02-08 20:25:28 -03:00
Matheus
d119d7123b
signal: fix handling of fpu and some more small things
2025-02-08 20:16:15 -03:00
Matheus
c34021e4d6
context: irq
2025-02-08 20:13:30 -03:00
Vlad-Robert Baciu
6df7c4ebd5
Use IA32_APIC_BASE MSR to get LAPIC address instead of the MADT
2025-01-11 18:46:27 +02:00
Matheus
0ed09edb63
signal: return from ucontext context
2024-12-25 21:58:39 -03:00
Matheus
936180e228
signal: ucontext and a fix
2024-12-25 20:23:32 -03:00
Matheus
9c53d875dc
kernel: fix build
2024-10-03 22:51:09 -03:00
Matheus
a2f133b346
timekeeper: try to sync base time between cpus
2024-10-02 19:43:32 -03:00
Matheus
65ef516fd8
tsc: redo calibration, directly use hpet
2024-10-02 19:42:57 -03:00
Matheus
c3eef02d50
tsc: initial implementation of timekeeper source
2024-09-29 16:30:08 -03:00
Matheus
fdd203d1a7
kvmclock: initial implementation
2024-09-29 11:21:46 -03:00
Matheus
11f76ab01d
cpuid: better implementation
2024-09-29 11:21:21 -03:00
Matheus
b8acbc5bcd
timekeeper: redo timekeeping
2024-09-29 11:20:40 -03:00
8infy
12a2125f8e
acpi: bump to latest uACPI master
2024-09-28 15:20:12 +03:00
Matheus
0585eff9a2
x86_64 cpu: find topology
2024-09-24 23:08:58 -03:00
Matheus
749f945205
scheduler: slightly redo how the preemption dpc is enqueued and add a skeleton for a rescheduling ipi
2024-09-17 22:29:06 -03:00
Matheus
80abd907a8
smp: smp_cpus
2024-09-16 21:36:16 -03:00
Matheus
0a49ca75b5
mmu: arch_mmu_invalidate() -> arch_mmu_invalidate_range()
2024-09-16 17:34:05 -03:00
Matheus
9974746c6c
cpu: _bsp() -> get_bsp()
2024-09-15 22:52:24 -03:00
Matheus
16b6c86a5f
cpu: rename _cpu() to current_cpu()
2024-09-15 19:03:09 -03:00
Matheus
56d665d5a0
kernel: fix remaining _cpu() races
2024-09-15 18:39:59 -03:00
Matheus
32392573cc
cpu: change all _cpu()->vmmctx to current_vmm_context
2024-09-15 18:07:05 -03:00
Matheus
e058d62261
cpu: change _cpu()->thread calls to current_thread() to fix smp race
2024-09-15 17:47:26 -03:00
Matheus
5382a8249b
x86_64 cpu: change how the current cpu pointer is found
2024-09-15 15:26:40 -03:00
Matheus
cdcce89fa5
ps2: fix warning
2024-09-08 12:11:20 -03:00
Matheus
d65c29197d
ps2: improvements
2024-09-05 23:13:29 -03:00
8infy
db55f99e23
Integrate uACPI & remove own ACPI parsing code
...
This commit adds uACPI as a submodule and removes all handwritten table
parsing code as well as struct definitions, since they now work via
uACPI. There's also now an ability to shut down by using the power
button.
2024-09-01 23:12:44 +03:00
8infy
476d4bad74
io: add outw & inw helpers
2024-09-01 23:12:44 +03:00
8infy
6154318ab3
kernel: add a helper to retrieve the bsp CPU
...
This is useful to be able to e.g. set affinity for the BSP CPU.
2024-09-01 19:37:09 +03:00
Matheus
dd75dc2d87
vmm: vmm_changemmuflags
2024-08-21 21:33:29 -03:00
Matheus
5c83db1580
x86_64 pci: fix msi message format
2024-07-27 23:58:33 -03:00
Matheus
4cd2a7b41c
ps2: fix real hw
2024-07-11 00:05:42 -03:00
Matheus
f05eb36cfd
kernel: remove already done TODOs
2024-06-16 12:48:16 -03:00
Matheus
50b4b45d00
kernel: usercopy functions
2024-06-09 19:31:26 -03:00
Matheus
04d8431b32
cpu: better _cpu() function
2024-05-27 22:03:44 -03:00
Matheus
d2527bee92
context changes and scheduler userspace check fix
2024-05-27 22:00:59 -03:00
Matheus
8d42b80855
smp: nmi ipi support
2024-05-26 20:51:54 -03:00
Matheus
890f6ba3ac
dpc: fix smp
2024-05-26 17:18:41 -03:00
Matheus
48b7fb4324
vmmcache: initial implementation
2024-05-24 18:03:24 -03:00