Joe and I have been experimenting with BPF and its application for OVS. This patch shows our attempt to implement ovs actions using eBPF.
The kernel changes are against the 'net-next'. The corresponding user space changes will be post next. This patch set implements an BPF action, that has the same interface as current OVS output action. Instead of sending out a packet, it only generates a kernel message. This feature is neither complete nor useful as is. We are mostly interested in comments on: The infrastructure changes to support and running BPF functions, and suggestions on extensions beyond those patches. Andy Zhou (2): BPF: add a new BPF program type BPF_PROG_TYPE_OPENVSWITCH openvswitch: implements the BPF_PROG action in datapath include/linux/bpf.h | 2 +- include/uapi/linux/bpf.h | 1 + include/uapi/linux/openvswitch.h | 29 ++++++++++++- net/Makefile | 4 +- net/openvswitch/Makefile | 2 + net/openvswitch/actions.c | 30 +++++++++++++ net/openvswitch/bpf.c | 87 +++++++++++++++++++++++++++++++++++++ net/openvswitch/datapath.c | 6 ++- net/openvswitch/flow_netlink.c | 92 +++++++++++++++++++++++++++++++++++++++- net/openvswitch/flow_netlink.h | 8 ++++ 10 files changed, 254 insertions(+), 7 deletions(-) create mode 100644 net/openvswitch/bpf.c -- 1.9.1 _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev