Files
RedBear-OS/net/ixgbed
bjorn3 e7fe3183b0 Make all pcid_interface methods abort the process on errors
Effectively the only way to recover from errors in the communication
with pcid is by restarting the driver from scratch possibly after
restarting pcid. As such moving the aborts from individual drivers to
pcid_interface simplifies drivers while at the same time allowing nicer
error messages.
2025-03-02 12:36:35 +01:00
..
2024-02-28 21:31:26 +01:00
2024-02-28 21:31:26 +01:00
2024-02-28 21:31:26 +01:00

ixgbed (a.k.a. ixy.rs on Redox)

ixgbed is the Redox port of ixy.rs, a Rust rewrite of the ixy userspace network driver. It is designed to be readable, idiomatic Rust code. It supports Intel 82599 10GbE NICs (ixgbe family).

Features

  • first 10 Gbit/s network driver on Redox
  • transmitting 250 times faster than e1000 / rtl8168 driver
  • MSI-X interrupts (not supported by Redox yet)
  • less than 1000 lines of code for the driver
  • documented code

Build instructions

See the Redox README for build instructions.

To run ixgbed on Redox (in case the driver is not shipped with Redox anymore)

  • clone this project into cookbook/recipes/drivers/source/
  • create an entry for ixgbed in cookbook/recipes/drivers/source/Cargo.toml
  • check if your ixgbe device is included in config.toml
  • touch filesystem.toml in Redox's root directory, build Redox and run it

Usage

To test the driver's transmit and forwarding capabilities, have a look at rheinfall, a simple packet generator / forwarder application.

Docs

ixgbed contains documentation that can be created and viewed by running

cargo doc --open