This is continuation of previous mail thread:
http://dpdk.org/ml/archives/dev/2016-February/032701.html
Since there were no comments, I want to give another try, this can be good
opportunity to escape from out-of-kernel Linux module.
First high level important question:
- Do you think will Linux community welcome a network driver that
enables/supports userspace network driver?
And let me rephrase what I have in my mind:
- Implement a Linux network driver, that uses rtnetlink, so that userspace
applications can create network interfaces.
- This driver implements net_device_ops as a forwarding layer to userspace;
using netlink sockets.
- Each userspace network driver has a unique identifier.
- Userspace drivers listens netlink group created by kernel driver.
- An application, or userspace driver itself, attaches userspace driver, by
providing its unique id, to the created network interface. This associates
network interface to userspace driver.
- After this point userspace driver detects its own id in netlink messages and
responds back to the requests.
- Anytime userspace driver can be detached and network interface can be removed
by a userspace application.
I believe this can work, but not sure if this worths to the investment because
this can be quite some work. Also not sure if this gets accepted by Linux
upstream.
I would like to have some support/feedback to undertake something like this.
Any comment is welcome.
Thanks,
ferruh