Linux 7.2 Adds USB4STREAM for Direct USB4 Data Transfers

Linux 7.2 adds Intel's USB4STREAM driver for direct data streams between USB4-connected systems, with optional lower-latency busy polling following in Linux 7.3 development.

Linux 7.2 includes USB4STREAM, an Intel-developed protocol and driver for sending raw data directly between two systems connected over USB4 or Thunderbolt. The merged kernel support exposes stream devices to userspace, allowing ordinary read and write operations without forcing the transfer through a conventional network interface.

The feature is more accurately described as a transport building block than a finished file-sharing application. It creates a low-overhead path that software can use for files, camera feeds or other raw streams; it does not add a desktop transfer window, discovery service or cross-platform sharing workflow by itself.

USB4STREAM exposes direct streams as /dev/tbstream devices

On a supported connection, the driver creates character devices named /dev/tbstreamX. Applications can open those devices with standard read and write calls, which keeps the userspace interface simple and avoids requiring every program to implement a specialized kernel API.

The underlying protocol sends packets between USB4 domains. Because both computers participate in the USB4 connection, this is different from attaching an ordinary USB storage device to one host. Hardware, firmware, cable capability and kernel support on both sides all matter.

Basic tools can demonstrate the stream, but production software still needs to handle framing, integrity, permissions, retries and the meaning of the transferred data. Copying arbitrary bytes into a character device is not equivalent to a complete replacement for SMB, NFS, SSH or a synchronized file-transfer application.

The new path complements Thunderbolt networking

USB4 and Thunderbolt systems can already communicate through networking modes. USB4STREAM does not remove those options. It provides a second path for workloads that benefit from a direct raw stream and do not need the addressing, routing and services supplied by a normal network stack.

That distinction matters when evaluating performance claims. A shorter software path can reduce overhead and latency, but the kernel merge does not promise a universal transfer rate. Results will depend on the controllers, link generation, cable, buffer sizes, CPU and application using the interface.

Potential uses extend beyond moving files. A program could pass a camera feed, sensor output or another continuous data source between machines. The common requirement is that the application knows how to consume a byte stream and can tolerate the direct point-to-point model.

Linux 7.3 development adds an optional busy-poll mode

Follow-up work in the Thunderbolt development tree adds a busy_poll option for USB4STREAM. Instead of waiting entirely for interrupt-driven processing, a busy-polling receiver can spend CPU time actively checking for work. That can reduce latency for sensitive streams, but it increases processor activity and power use.

The option is exposed through ConfigFS for an individual stream service, allowing it to be enabled where the latency tradeoff is justified rather than becoming the default for every transfer. The change was queued in Thunderbolt development for the Linux 7.3 cycle, so users should verify the final kernel version and distribution configuration before relying on it.

Hardware support and software tooling will determine adoption

Linux 7.2 supplies the kernel foundation. Practical adoption now depends on compatible USB4 hardware and on tools that turn the raw interface into understandable workflows. Security also remains a userspace concern: direct physical connectivity does not remove the need to validate incoming data or restrict device access.

Distribution kernels may enable the driver on different schedules, and a machine advertising USB4 does not guarantee that every cable or port combination exposes the required host-to-host path. Users testing the feature should check kernel configuration and logs on both systems before treating an absent device node as an application failure.

For GTR’s wider Linux and systems coverage, see the Tech section. USB4STREAM is a useful kernel capability today, but its value will be clearest once applications and distributions expose it without asking users to assemble a transfer protocol themselves.

Sources: Linux USB/Thunderbolt pull request for Linux 7.2; Thunderbolt development commit — USB4STREAM busy polling.