[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAHA+R7M0--G=znvqQwy5Qmnm5po9yApcn4LjSSv8+-5c1D7RwQ@mail.gmail.com>
Date: Mon, 3 Nov 2014 13:34:33 -0800
From: Cong Wang <cwang@...pensource.com>
To: Eric Dumazet <eric.dumazet@...il.com>
Cc: David Miller <davem@...emloft.net>,
netdev <netdev@...r.kernel.org>,
Yaogong Wang <wygivan@...gle.com>
Subject: Re: [PATCH net-next] net: add rbnode to struct sk_buff
On Mon, Nov 3, 2014 at 8:19 AM, Eric Dumazet <eric.dumazet@...il.com> wrote:
>
> struct sk_buff {
> - /* These two members must be first. */
> - struct sk_buff *next;
> - struct sk_buff *prev;
> -
> union {
> - ktime_t tstamp;
> - struct skb_mstamp skb_mstamp;
> + struct {
> + /* These two members must be first. */
> + struct sk_buff *next;
> + struct sk_buff *prev;
> +
> + union {
> + ktime_t tstamp;
> + struct skb_mstamp skb_mstamp;
> + };
> + };
> + struct rb_node rbnode; /* used in netem & tcp stack */
> };
No objections, but this is hacky, rbnode is larger than ->next + ->prev,
this means ->tstamp is always overwritten. This is why netem saves it
to its CB. This isn't flexible.
Maybe both netem and TCP ooo queue should consider CB? Not sure
if TCP still has any space for more CB though.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists