Messages in this thread | | | Date | Thu, 20 Mar 2014 16:01:59 +0000 | From | Zoltan Kiss <> | Subject | Re: [PATCH v2] core, nfqueue, openvswitch: Orphan frags in skb_zerocopy and handle errors |
| |
On 20/03/14 12:33, Thomas Graf wrote: > On 03/20/2014 01:16 PM, Thomas Graf wrote: >> On 03/19/2014 10:07 PM, Zoltan Kiss wrote: >>> skb_zerocopy can copy elements of the frags array between skbs, but it >>> doesn't >>> orphan them. Also, it doesn't handle errors, so this patch takes care >>> of that >>> as well. >>> >>> Signed-off-by: Zoltan Kiss <zoltan.kiss@citrix.com> >> >> Acked-by: Thomas Graf <tgraf@redhat.com> > > I take this back ;) > >>> --- >>> + if (unlikely(skb_orphan_frags(to, GFP_ATOMIC))) { >>> + skb_tx_error(to); >>> + return -ENOMEM; >>> + } > > Just noticed that you orphan the Netlink skb frags which do not > exist yet instead of the source skb frags. Oh, sorry, I'll fix this up.
> >> Did you consider calling skb_tx_error() for Netlink message >> allocation failures for the upcall as well? That memory pressure >> is currently not reported back. Yeah, that makes sense, I'll fix it the callers. Btw. I guess that just provides some statistical data for the creator of the skb. At least for netback it only increment a stat counter.
Zoli
| |