9e5f915d42
- tcp/scheme/tcp.rs: write_buf now returns the actual bytes from send_slice() instead of buf.len(). Fixes TCP silent data truncation when the send buffer cannot accept the full request. - netstack/scheme/ip.rs: fpath() uses .expect() with a message in place of .unwrap() for clearer diagnostics on buffer write failure. - dhcpd/main.rs: parse the first non-flag positional argument as the interface name. Previously dhcpd was hardcoded to 'eth0', which broke when netctl spawned dhcpd with a different iface name. - drivers/common/dma.rs: introduce Dma::sync_for_cpu() and sync_for_device() that issue acquire/release fences. Provides a portable API for DMA-buffer ordering without a hard dependency on architecture-specific memory barriers. - drivers/net/virtio-netd/scheme.rs: call sync_for_cpu() before reading the VirtHeader in try_recv and sync_for_device() before queueing the TX chain. Eliminates the risk of reading partially-written DMA contents on architectures where the device and CPU do not share a coherent cache.