Matheus
9a9740469f
kcov: move thread attach from open to start
...
The current kcov code attaches a kcov object to the thread which opened
it. This is not desirable, as syzkaller opens /dev/kcov in a parent
process and passes it down to the child.
Move the thread attachment from open() time to start time.
2026-10-08 18:42:25 -03:00
Matheus
e25008b80b
Merge pull request #36 from jvbronzeado/rewrite
...
Optimize page fault handling by caching last accessed range
2026-10-08 15:39:12 -03:00
jvbronzeado
185b33e719
mm: added page fault range caching for each mm_space_t
...
mm: added last_pagefault handling when mm_space_t is unmapped
mm: fixed styling inconsistencies, fixed last pagefault range removal
mm: fix unitialized last_pagefault member in slab data
2026-10-08 15:28:56 -03:00
wnstngs
91491d825b
kernel: remove the list_t alias since it's just a typedef for node
2026-10-07 14:08:36 +03:00
wnstngs
513faa92c7
kernel: use list.h for scheduling run queues
2026-10-07 10:24:50 +03:00
wnstngs
3894be1a15
kernel: use list.h for DPC queues
2026-10-07 10:23:18 +03:00
Matheus
e4a4896b4b
kcov: initial implementation
...
Implement a device (/dev/kcov) that exposes coverage info for the
kernel. This will be especially useful for coverage-based fuzzing (e.g.
syzkaller).
Exclude a lot of functions which would crash/otherwise interfere in the
coverage, including only processing coverage callbacks when not handling
an irq.
2026-10-06 11:51:02 -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
cc069554ae
vfs: fix UAF on VOP_RELEASE
2026-10-06 11:50:59 -03:00
wnstngs
3ecfb0ffb9
kernel: detach all event listener attachments
2026-09-23 20:48:29 +03:00
Matheus
7a533242ad
scheduler: make idle cpus steal work
2026-09-16 00:22:05 -03:00
Matheus
b9a5ead597
mm: add full page in flag for get physical
2026-09-15 14:45:56 -03:00
Matheus
cdee765643
raw sockets: make creating them a privileged operation
2026-09-14 14:03:39 -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
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
Matheus
895c6d9345
eth: take size_t size in eth_process
2026-09-10 15:38:50 -03:00
Matheus
2c73b64e3f
wlan: set_key and del_key
2026-09-10 14:11:12 -03:00
Matheus
d3ff861386
wlan: association/disasssociation api and ioctls
2026-09-10 12:43:27 -03:00
Matheus
9b0f202bdb
wlan: expose scan, scan wait and bss cache get to userspace
2026-09-10 12:12:50 -03:00
Matheus
6a8ed4a99c
wlan: finish glue between u80211 and u80211_drv
2026-09-10 10:41:52 -03:00
Matheus
daebfd89b5
net: consume descriptor on tx
2026-09-09 22:39:34 -03:00
Matheus
8134c00b69
wlan: registration of devices
2026-09-09 22:06:20 -03:00
Matheus
84ad92b475
u80211_drv: port over rtl8188eu driver
2026-09-09 19:08:14 -03:00
Matheus
2328f889ef
kernel: firmware loading
2026-09-09 18:06:17 -03:00
Matheus
de0d5cb8f9
vfs: root event signaling
2026-09-09 16:26:10 -03:00
Matheus
1b4e257793
work: initial implementation
2026-09-08 23:37:19 -03:00
Matheus
017a08a793
ports: bump mlibc/frigg
2026-08-19 19:46:44 -03:00
Matheus
65358e6705
sysctl: SYS_CTL_HW_CPUS_ONLINE
2026-08-13 00:43:15 -03:00
Matheus
c194569d65
audio: mode selection
2026-08-07 08:27:17 -03:00
Matheus
c75b45436a
audio: allocate streams separately from devices
2026-08-05 22:44:36 -03:00
Matheus
6e5e9ecdc5
mm: add flags argument to mm_cache_get_page
2026-07-18 15:24:31 -03:00
Matheus
02ba3e3939
slab: fix smp false sharing
2026-07-17 18:06:25 -03:00
Matheus
7ab18babf4
abc: use pushlocks directly
2026-07-17 15:59:15 -03:00
Matheus
afd9d8d3a0
rename: RENAME_NOREPLACE
2026-07-14 16:37:48 -03:00
Matheus
c0cf666e5f
fatfs: migrate to advanced buffer cache
2026-07-14 14:45:44 -03:00
Matheus
967ca19436
kernel: advanced buffer cache
2026-07-13 22:36:39 -03:00
Matheus
1512b2f3c6
mm: properly implement page locking
2026-07-08 01:37:12 -03:00
Matheus
f46d85fe6d
socket: fix close shutdown properly
2026-07-07 16:49:45 -03:00
Matheus
c75617a6e2
localsocket: implement SO_RCVTIMEO and SO_SNDTIMEO
2026-07-07 02:17:26 -03:00
Matheus
7f8fd07f39
sock: sock_copy_addr_to_user
2026-07-05 16:16:05 -03:00
Matheus
4699055cee
kernel: remove unused header
2026-07-02 21:49:41 -03:00
Matheus
30cdfbb63c
mm: more page pinning work
2026-07-01 21:25:27 -03:00
Matheus
bec7abc91a
mm: refactor mm.c to use snake_case
2026-07-01 15:13:30 -03:00