Thread (1 message) 1 message, 1 author, 2012-02-06

Re: [PATCH net-next V2] gro: introduce gro_mac_header_len

From: David Miller <hidden>
Date: 2012-02-06 19:56:52
Also in: linux-rdma

From: David Miller <davem-fT/PcQaiUtIeIZ0/mPfg9Q@public.gmane.org>
Date: Mon, 06 Feb 2012 14:51:48 -0500 (EST)
From: David Miller <davem-fT/PcQaiUtIeIZ0/mPfg9Q@public.gmane.org>
Date: Mon, 06 Feb 2012 14:32:30 -0500 (EST)
quoted
From: Roland Dreier <redacted>
Date: Mon, 6 Feb 2012 11:23:21 -0800
quoted
Does the netdev driver own skb->cb between hard_header
and start_xmit?  If so we could use that instead of stealing
some header space, and that would at least let us not lie
about hard_header_len.
Unfortunately the packet scheduler sits between the hard_header()
call (via neigh_*_output() --> dev_hard_header()) and when the
device xmit method is invoked.

And the packet scheduler can make use of the skb->cb[], for
include/net/sch_generic.h:qdisc_skb_cb
Actually there is a way to make this work.

Define your ipoib_skb_cb something like:

struct ipoib_skb_cb {
	struct qdisc_skb_cb	qdisc_cb;

	... ipoib stuff goes here ...
};

That way you can use the SKB cb area for your ipoib info
without interfering with the packet scheduler.
But this needs a little bit of work since the qdisc_skb_cb ends with a
variable length array, but we can put an upper bound on this just like
we do for skb->cb[] itself to fix this issue.

I'll toss something together.
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help