On Fri, Mar 7, 2014 at 9:59 AM, Thomas Graf <tg...@redhat.com> wrote: > On 03/07/2014 06:28 PM, Pravin Shelar wrote: >> >> Problem is mapping SKBTX_DEV_ZEROCOPY pages to userspace. skb_zerocopy >> is not doing that. >> >> Unless I missing something, Current netlink code can not handle >> skb-frags with zero copy. So we have to copy skb anyways and no need >> to orphan-frags here. >> If you are planning on handling skb-frags without copying then >> skb_orphan_frags should be done in netlink. > > > If you look at the second part of skb_zerocopy() this is exactly what > it is doing unless the target skb has sufficient linear space > preallocated. At least unless mmap is enabled in which case we would > have to copy again until we have implemented a way to pass page refs > via the nl ring buffer. >
What is problem with passing page ref with get_page() to new skb as long as it is accessed kernel? I think we should set SKBTX_DEV_ZEROCOPY flag for new skb in skb_zerocopy() to track such pages but no need call skb_orphan_frags(). > So I think Zoltan is correct in orphaning frags that come from f.e. > a tun device via zerocopy_sg_from_iovec(). _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev