Series implementing a zerocopy method for OVS upcall messages. Based on top of commit: (''openvswitch: Enable memory mapped Netlink i/o'')
Thomas Graf (6): net: Export skb_zerocopy() to zerocopy from one skb to another openvswitch: Allow user space to announce ability to accept unaligned Netlink messages openvswitch: Drop user features if old user space attempted to create datapath openvswitch: Pass datapath into userspace queue functions openvswitch: Use skb_zerocopy() for upcall openvswitch: Compute checksum in skb_gso_segment() if needed include/linux/skbuff.h | 3 + include/uapi/linux/openvswitch.h | 14 ++++- net/core/skbuff.c | 85 ++++++++++++++++++++++++++++ net/netfilter/nfnetlink_queue_core.c | 59 ++----------------- net/openvswitch/datapath.c | 106 ++++++++++++++++++++++++++--------- net/openvswitch/datapath.h | 2 + 6 files changed, 185 insertions(+), 84 deletions(-) --- V9: - Dropped patches 1-3 (merged) - Dropped skb argument from upcall_msg_size() - Dropped dp_ifindex and net argument from all queue functions - Added patch to remove NETIF_F_HW_CSUM from __skb_gso_segment() V8: - Dropped patch adding NLM_F_REPLACE support, I'll pursue this in a separate patch series. Addresses Jesse's comments. - Improved comment describing OVS_DATAPATH_VERSION bump. V7: - removed unintential kernel-doc comment - WARN_ONCE() -> WARN(), message on single line, added \n V6: - Added memory mapped netlink i/o support - Drop user_features if old user space not aware of user features reuses an existing datapath V5: - Removed padding requirement in user space - Added OVS_DP_F_UNALIGNED flag let user space signal ability to receive unaligned Netlink messages, fall back to linear copy otherwise. V4: - Daniel Borkmann pointed out that the style in skbuff.h has changed in net-next, adapted to no longer using extern in headers. V3: - Removed unneeded alignment of nlmsg_len after padding V2: - Added skb_zerocopy_headlen() to calculate headroom of destination buffer. This also takes care of the from->head_frag issue. - Attribute alignment for frag_list case - API documentation - performance data for CHECKSUM_PARTIAL tx case _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev