]>
Projects (at) Tadryanom (dot) Me - AdrOS.git/commit
refactor: remove legacy per-node function pointers from fs_node_t
Phase B3b complete — all VFS dispatch now goes exclusively through
the f_ops pointer. Changes:
- fs.h: removed 16 legacy function pointer fields from fs_node_t
(read, write, open, close, finddir, readdir, ioctl, mmap, poll,
create, mkdir, unlink, rmdir, rename, truncate, link)
fs_node_t shrinks by 64 bytes (16 pointers × 4 bytes)
- fs.c: removed all legacy fallback paths from VFS wrappers
- syscall.c: removed legacy fallbacks for poll, readdir, ioctl,
mmap, truncate, finddir, and read/write capability checks
- overlayfs.c: removed legacy fallbacks in finddir/readdir dispatch
- kconsole.c: switched to f_ops-based readdir dispatch
- Removed all dual-assignment lines from:
ext2.c, fat.c, diskfs.c, tmpfs.c, devfs.c, overlayfs.c,
procfs.c, persistfs.c, pty.c, tty.c, keyboard.c, vbe.c,
initrd.c, syscall.c (pipe + socket nodes)
- Removed ext2_set_dir_ops, fat_set_dir_ops, diskfs_set_dir_ops
helper functions (no longer needed)
20/20 smoke tests pass.
17 files changed: