vasilito
0ec7bd46bb
Phase 3: GPU 3D drivers + Phase 1-2 stability fixes — full rollup
...
ROLLUP of all Phase 1-3 work on branch 0.3.0, targeting a production-ready
console + full graphical desktop under Intel and Virgl/VirtIO-GPU.
=== Phase 1 — Stability ===
- fbcond: Enter key handler (scancode 0x1C→\n), display map buffering,
control-char filter in all 7 keymaps, write_event assert
- build-redbear.sh: auto-rebuild-prefix when fork timestamps are newer
than prefix/x86_64-unknown-redox/sysroot (was warning-only). Added
configurable REDBEAR_SKIP_PREFIX_REBUILD guard.
- build-redbear.sh: set explicit keymap '-K us' in console activation
- config/redbear-device-services.toml: remove spurious init.d service
files for redbear-acmd/ecmd/usbaudiod. These USB device daemons are
spawned dynamically by pcid-spawner, not as boot-time init services.
Starting them without args panicked the boot flow.
- relibc: grantpt/unlockpt/ptsname (then deduplicated against stdlib)
- userutils: cherry-pick upstream getty commit 2834434 (standard C
ptsname/grantpt/unlockpt)
- base fork: Russian (ЙЦУКЕН) keymap + inputd control-char filter
(K_ESC/K_BKSP/K_ENTER → \0, commit 73e44d81 in submodule/base)
=== Phase 2 — Login & Console ===
- login.rs: restored to 0.2.5-known-good liner-based prompt
- redbear-upower: removed tokio full/signal features → protection fault fix
- redbear-power: excluded temporarily (being fixed in other session)
- tlc version: updated to 0.3.0
=== Phase 3 — GPU/3D Drivers (commit 0898332f7a ) ===
Intel i915: FULLY implemented — real ring buffer + MMIO command
submission via GEM DMA → GGTT → i915 render ring, with hardware
head-pointer polling (2M iterations, 50µs backoff). Zero stubs.
VirtIO GPU/Virgl (VirtioTransport): 11 VIRTGPU ioctls (GETPARAM,
GET_CAPS, RESOURCE_CREATE, RESOURCE_INFO, CONTEXT_INIT, EXECBUFFER,
WAIT, TRANSFER_TO_HOST, TRANSFER_FROM_HOST, MAP, CREATE_BLOB) ported
from Linux 7.1 virtgpu_ioctl.c and virtgpu_vq.c.
- driver.rs: 8 virgl_* trait methods (default Unsupported)
- scheme.rs: 11 ioctl constants + 8 wire structures + dispatch
- virtio/transport.rs: PCI capability discovery, feature negotiation,
control+cursor virtqueue setup, vring descriptor building
- virtio/mod.rs: real implementations for all 8 virgl_* methods
- intel/mod.rs: explicit virgl Unsupported stubs
Other changes from active sessions: Cargo.toml version bumps, linux-kpi
headers, libpciaccess recipe, mesa/recipe.toml, kf6 patches, expat,
driver-manager, redbear-sessiond, redbear-compositor, cub, tlc, and
many other local recipes.
2026-07-09 20:29:28 +03:00
vasilito
98751dd55c
git: bump submodule/base for ipcd SO_SNDBUF/SO_RCVBUF
2026-07-09 18:43:20 +03:00
vasilito
bc3d3e09ee
fix: build system — resolve lockfile collisions + Intel display + relibc
...
- Symlinks in recipes/core/base/ and local/sources/base/ for sibling fork resolution
- Revert redox-drm Cargo.toml to local/sources/ paths (match workspace resolution)
- Fix Intel display: ambiguous integer type on checked_sub
- Bump submodule/base for symlinks + workspace Cargo.toml fix
- Bump submodule/relibc for ENOTTY + ENOPROTOOPT imports
2026-07-09 16:09:57 +03:00
vasilito
cfb6d7fc8a
submodule: base — Intel GPU pipe documentation, watermark fix
...
Cumulative: watermark formula (vdisplay/clamp), PLANE_CTL docs,
fetch_framebuffer docs. All pipe.rs TODOs resolved.
2026-07-09 15:44:04 +03:00
vasilito
a0ce684255
submodule: base — Intel GPU watermark formula (resolution-aware)
...
Replaced hardcoded wm_lines=2 with clamp(vdisplay/16, 8, 128)
formula, cross-referenced from Linux i915 skl_watermark.c.
2026-07-09 15:42:16 +03:00
vasilito
6ccaad67f5
git: bump submodule/relibc for ENOPROTOOPT import fix
2026-07-09 15:11:20 +03:00
vasilito
a91b7f56e8
kernel: bump (unknown syscall logging)
2026-07-09 15:08:28 +03:00
vasilito
86a4f83d6c
relibc: bump (setsockopt + listen fixes)
2026-07-09 15:05:49 +03:00
vasilito
eb6e74f2ee
fix: redox-drm lockfile collisions + missing relibc ENOTTY import
...
- Add redox-scheme symlink in recipes/core/base/ to resolve path collision
when daemon workspace resolves ../redox-scheme from the recipe copy location
- Remove redundant libredox direct dep from redox-drm Cargo.toml
(arrives transitively through daemon; direct dep creates lockfile collision)
- Align redox-drm's redox-scheme path to recipes/core/base/redox-scheme
symlink to match daemon's workspace resolution path
- Fix missing ENOTTY import in relibc src/header/sys_ioctl/redox/mod.rs
2026-07-09 15:00:32 +03:00
vasilito
1f71972db8
submodule: base — Intel GPU hardware cursor plane (Kaby Lake+)
...
Replaced ihdgd cursor stub with real Intel CURCNTR/CURBASE/CURPOS
register programming for Gen9+ hardware cursor. 64x64 ARGB8888
cursor surface with signed 16-bit screen position tracking.
Removes the 'not yet implemented' stub in handle_cursor().
2026-07-09 14:40:13 +03:00
vasilito
a09e214825
base: bump (ihdgd GGTT 64-bit doc)
2026-07-09 14:36:19 +03:00
vasilito
7683a409fc
netcfg: route/lookup rw node
2026-07-09 13:19:58 +03:00
vasilito
0595c5c962
0.3.0: bump relibc submodule
2026-07-09 13:09:06 +03:00
vasilito
c673bc7f3c
base: bump (ihdgd GMBUS write)
2026-07-09 12:55:55 +03:00
vasilito
acc59bc28b
base: bump (ihdgd Kaby Lake DDI port regs)
2026-07-09 12:52:11 +03:00
vasilito
82b618e28d
base: bump (virtio-gpud VirGL 3D enable)
2026-07-09 12:45:06 +03:00
vasilito
e277f0bc15
arp: max 1024 entries with LRU eviction
2026-07-09 12:33:30 +03:00
vasilito
9959cb6f89
base: bump (cursor no-op fix)
2026-07-09 12:29:50 +03:00
vasilito
8d67101e7e
udp: sendmsg/sendto support
2026-07-09 12:26:21 +03:00
vasilito
05fb9b0132
base: bump (virtio-netd MAC fallback)
2026-07-09 12:24:20 +03:00
vasilito
0387242cec
relibc: bump (setitimer implementation)
2026-07-09 12:21:54 +03:00
vasilito
59f99a0a21
relibc: bump (mremap implementation)
2026-07-09 12:20:14 +03:00
vasilito
ef497c2029
kernel: bump to d64482f1..ea16a1b5 (FACS mapping)
2026-07-09 12:07:25 +03:00
vasilito
ef08f2821b
relibc: bump (clock_settime implementation)
2026-07-09 11:50:48 +03:00
vasilito
3ba16cd969
vxlan/gre/ipip: parent device integration
2026-07-09 11:47:59 +03:00
vasilito
811803dedf
base: bump (hwd LegacyBackend implementation)
2026-07-09 11:43:37 +03:00
vasilito
9b65ff1988
relibc: bump (add syncfs to Pal trait)
2026-07-09 11:36:46 +03:00
vasilito
0dafc80b48
vlan: parent device + docs: Phase 4 completion + VLAN status
2026-07-09 11:26:03 +03:00
vasilito
19312a3e29
syscall+kernel+relibc: SYS_SYNC + SYS_SYNCFS implementation
2026-07-09 11:25:07 +03:00
vasilito
544e0f4870
route: direct route support + flush
2026-07-09 11:19:50 +03:00
vasilito
10819348f0
kernel: bump (FADT offset fix + FUTEX_REQUEUE import)
2026-07-09 11:17:50 +03:00
vasilito
d6bb1c1ae2
route: flush all routes
2026-07-09 11:16:49 +03:00
vasilito
26e5f4a691
kernel: bump (/proc/self sub-path resolution)
2026-07-09 11:16:15 +03:00
vasilito
04b6440daa
netcfg: version info + enhanced help
2026-07-09 11:14:27 +03:00
vasilito
258dc18b68
kernel: bump (FADT offset fix)
2026-07-09 11:13:38 +03:00
vasilito
0f23075eed
netcfg: help node + nat bindings + multi-adapter fix
2026-07-09 11:10:59 +03:00
vasilito
a791a9fc4c
nat: active SNAT binding tracking
2026-07-09 11:04:41 +03:00
vasilito
fbd60fa8ec
kernel: bump (FUTEX_REQUEUE)
2026-07-09 10:48:49 +03:00
vasilito
a728c9ec61
route: metric/preference field
2026-07-09 10:48:09 +03:00
vasilito
b98aa6b54d
kernel: bump (/proc/self)
2026-07-09 10:42:39 +03:00
vasilito
43b7fe4171
conntrack: max_entries limit
2026-07-09 10:41:26 +03:00
vasilito
f069dcfa18
conntrack: icmp_error_count
2026-07-09 10:19:22 +03:00
vasilito
5afa28d13b
kernel: bump (/proc/filesystems)
2026-07-09 10:15:58 +03:00
vasilito
84c7287bb2
kernel: bump (/proc/version)
2026-07-09 10:13:01 +03:00
vasilito
e541be43fb
netcfg: standalone conntrack node
2026-07-09 10:08:55 +03:00
vasilito
51c7fe66dd
kernel: bump (/proc/loadavg)
2026-07-09 10:08:33 +03:00
vasilito
f11d3300f9
netcfg: TCP socket queue sizes in sockets/list
2026-07-09 10:06:00 +03:00
vasilito
07eb4d0fa4
kernel: bump (/proc/uptime)
2026-07-09 10:04:12 +03:00
vasilito
8bf238a0dc
filter: --ctstate flag + case-insensitive + CSV
2026-07-09 10:01:48 +03:00
vasilito
25213b5850
submodule: base — commit operator WIP conntrack ICMP error tracking
...
Committed previously-unstaged operator work-in-progress:
- Added ConnState::Error variant for ICMP error packets
- Added is_error detection (ICMPv4/v6 Dest Unreachable, Time Exceeded)
- Added track_icmp_error() for embedded original packet tuple extraction
- Mirrors Linux 7.1 nf_conntrack_icmp_error()
Previously caused E0599 cross-compilation errors. Now stabilizes
the base fork build.
2026-07-09 09:58:13 +03:00