Re: [PATCH net-next 1/8] flow_keys: Record IP layer protocol in skb_flow_dissect()
From: David Miller <davem@davemloft.net>
Date: 2014-06-11 22:08:24
From: David Miller <davem@davemloft.net> Date: Wed, 11 Jun 2014 15:06:36 -0700 (PDT)
From: Eric Dumazet <redacted> Date: Tue, 10 Jun 2014 07:26:30 -0700quoted
On Tue, 2014-06-10 at 19:38 +0530, Govindarajulu Varadarajan wrote:quoted
quoted
determining IPv4/IPv6 is important because this can be used in dissecting flow in Accelerated RFS. Adaptor does not support IPv6 filters. Since Accelerated RFS is supported for IPV6, using skb_flow_dissect will return true with non-zero values in src/dst for IPv6. If I am going to write separate function for getting IP address and port numbers, its definition is going to be somewhat same as skb_flow_dissect. Why not improve whats already written and reuse it? Is there any significant downside of adding u16 n_proto and increasing size of qdisc_skb_cb by 4 bytes?You can avoid this increase (might be bad for IB, hard to tell), by changing sch_choke.c to only store a part of the struct flow_keys.I think this is fine, IPOIB's control block will need still just 44 bytes after these changes, so there will still be 4 bytes to spare. I'm going to apply this series.
Actually, I change my mind, Govindarajulu can you address Sergei's feedback in your other changes and repost this series? Thanks.