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
Matheus
1b63e9b436
signals: more general changes
2024-05-17 18:48:57 -03:00
Matheus
7b0cc4c51b
initial signal implementation
2024-05-14 15:04:48 -03:00
Matheus
27d24f3e20
cpu: dont access cpu local storage using rdmsr
2024-04-29 21:26:47 -03:00
Matheus
8deb3a1144
context: CTX_INIT interrupt flag
2024-04-28 14:32:28 -03:00
Matheus
a8bdb6e1ad
x86-64: properly set up x87 state
2024-04-21 20:17:18 -03:00
Matheus
7f297728fb
ps2 mouse
2024-04-14 22:22:32 -03:00
Matheus
2cb94c2c2e
scheduler: handle userland thread exit
2024-04-14 14:00:11 -03:00
Matheus
de3226d23b
cpu: more byte swap functions
2024-03-30 18:38:12 -03:00
Matheus
91f69e184d
cpu: byte ordering swapping functions
2024-03-29 13:37:11 -03:00
Matheus
57c94ebf15
smp: let other processors run threads
2023-11-30 17:54:32 -03:00
Matheus
12872ae17f
mmu: tlb shootdown
2023-11-30 17:50:23 -03:00