Matheus
1ed159489d
scheduler: only run load balance when appropriate
...
Prevent the load balancer from balancing when running uniprocessor
machines and when not all CPUs are online yet.
This prevents a race between ap initialization and load balancing.
2026-10-06 11:51:00 -03:00
Matheus
d214326e8e
print: add nouserprint argument
...
For some usecases, silencing syscall_print()s is ideal. A good example
of that is syzkaller, which uses logs to detect crashes and a badly
timed syscall_print() could interfere.
Add a nouserprint argument which skips printing on syscall_print().
2026-10-06 11:51:00 -03:00
Matheus
77520c00c5
pty: use new anonymous devfs operations
...
Switch the old hacky way of registering a new pty master into using the
new anonymous api.
2026-10-06 11:51:00 -03:00
Matheus
1c65a2c891
devfs: add anonymous variants to register/remove
...
The current devfs code requires registered devices to have a name on
creation. This makes temporary/hidden devices like pty master ends
appear for a split second on the devfs tree.
Add a way of registering/removing devfs nodes which do not have a name
on the tree.
2026-10-06 11:50:59 -03:00
Matheus
d1765b22b5
tty: fix lifetime issue in tty_unregister()
...
The tty_unregister code removes the tty's vnode from the devfs mappings.
This causes a reference to be dropped, which can then cause the tty to
be freed and the remaining code in tty_unregister does a UAF.
Fix this by holding a reference across the unregister operation.
2026-10-06 11:50:59 -03:00
Matheus
cc069554ae
vfs: fix UAF on VOP_RELEASE
2026-10-06 11:50:59 -03:00
Matheus
e8da0eba6a
statvfs: handle vnodes without a vfs
2026-10-06 11:50:58 -03:00
Matheus
eda6bca466
tmpfs: remove bad print
2026-10-06 11:50:58 -03:00
Matheus
efe699bd2f
x86_64 cpu: always inline asm helpers
2026-10-06 11:50:57 -03:00
Matheus
9e028dc059
tcp: copy port to listening tcb chilren
2026-10-06 11:50:57 -03:00
Matheus
bf7a4a9d72
vionet: fix transmit publication ordering
2026-10-06 11:50:56 -03:00
Matheus
2867889202
vfs: fix possible use-after-free
2026-10-06 11:50:56 -03:00
Matheus
4500f1f3ec
kernel: add nofblog option
2026-10-06 11:50:56 -03:00
Matheus
f7052a78c1
Merge pull request #41 from wnsntgs/Kernel/Lib/PushLockOptimizations
...
Avoid repeated push lock waiter queue walks
2026-09-28 16:39:43 -03:00
wnstngs
2db436c700
kernel: guard pushlock assertions with DEBUG_LOCKS
2026-09-28 22:35:13 +03:00
wnstngs
4eab391004
kernel: avoid repeated push lock waiter queue walks
2026-09-24 23:17:53 +03:00
Matheus
ad1740738b
Merge pull request #42 from wnsntgs/Kernel/Lib/SemaphoreWakeupFix
...
Fix semaphore wakeup race
2026-09-23 15:11:05 -03:00
Matheus
68af759f20
Merge pull request #43 from wnsntgs/Kernel/Sched/NanosleepTimerFix
...
Fix timer cleanup in interrupted nanosleep
2026-09-23 15:09:28 -03:00
Matheus
6ac80173b4
Merge pull request #44 from wnsntgs/Kernel/Lib/EventDetachFix
...
Detach all event listener attachments
2026-09-23 15:07:41 -03:00
wnstngs
3a952c96b1
kernel: fix semaphore wakeup race
2026-09-23 20:48:29 +03:00
wnstngs
6780626f29
kernel: cancel interrupted nanosleep timer without remaining pointer
2026-09-23 20:48:29 +03:00
wnstngs
3ecfb0ffb9
kernel: detach all event listener attachments
2026-09-23 20:48:29 +03:00
Christopher Fandrich
a6fd10c211
syscall: Properly handle a non-canonical return RIP
2026-09-22 13:11:10 -07:00
Matheus
8d82a8fdf1
time: fix diffus
2026-09-19 12:50:23 -03:00
Matheus
c347afc761
sched: if last cpu is idle, run on it
2026-09-19 12:50:00 -03:00
Matheus
7a533242ad
scheduler: make idle cpus steal work
2026-09-16 00:22:05 -03:00
Matheus
10cd22207d
smp: make cpu internal id match offset into cpu table
2026-09-15 23:40:53 -03:00
Matheus
74c0bb2450
sched: actually set cpus as idle
2026-09-15 23:19:56 -03:00
Matheus
3a421a58ad
futex: style
2026-09-15 15:06:16 -03:00
Matheus
58d2e468da
futex: refactor and optimize
2026-09-15 14:57:19 -03:00
Matheus
b9a5ead597
mm: add full page in flag for get physical
2026-09-15 14:45:56 -03:00
Matheus
79262a7c83
netdev: protect wlan ioctls behind auth
2026-09-14 14:06:59 -03:00
Matheus
cdee765643
raw sockets: make creating them a privileged operation
2026-09-14 14:03:39 -03:00
Matheus
d1cc050d76
sched: fix race on thread switching
2026-09-14 13:21:47 -03:00
Matheus
f386f8e33f
ext2: fix compilation
2026-09-14 10:55:05 -03:00
Matheus
3eaca91ff1
vfs: properly sync metadata
2026-09-14 10:11:31 -03:00
Matheus
f0dc54e027
netdev: cleanup and abstraction
2026-09-14 09:47:07 -03:00
Matheus
b1c82ae6af
u80211_drv: bump
2026-09-14 09:23:42 -03:00
Matheus
5b088742de
wlan: map u80211/drv errors into astral errnos
2026-09-14 09:14:34 -03:00
Matheus
f7b4348384
net: bump u80211
2026-09-14 09:08:02 -03:00
Matheus
565c997bd9
Merge pull request #38 from wnsntgs/pushlock
...
Improve push lock wakeup behavior under contention
2026-09-11 00:42:59 -03:00
Matheus
e70a6cde76
u80211_drv: fix group key hw encryption in rtl8188eu
2026-09-10 23:58:26 -03:00
Matheus
433fd852df
u80211: fix destination check on rx
2026-09-10 23:58:26 -03:00
Matheus
d9ea361caf
ipv4: fix receival of different sized headers
2026-09-10 23:58:25 -03:00
Matheus
5aca46e22c
socket: SIOCGIFINDEX
2026-09-10 23:58:25 -03:00
Matheus
66b0cb9076
sockets: expose raw sockets to userspace
2026-09-10 17:56:54 -03:00
Matheus
e17ba000e2
raw sockets: finish implementation
2026-09-10 17:19:35 -03:00
Matheus
1a8fe895b0
netdev: netdev_from_minor
2026-09-10 16:41:49 -03:00
Matheus
79752fb5e0
sock: pass protocol to sockets
2026-09-10 16:41:21 -03:00
Matheus
894d9bdaf9
raw: raw sockets
2026-09-10 15:59:53 -03:00