Thread (3 messages) 3 messages, 2 authors, 2012-10-05

Re: [PATCH net] ipv6: clean up tcp_v6_early_demux() icsk variable

flat view

From: Eric Dumazet <hidden>
Date: 2012-10-05 13:56:10

On Fri, 2012-10-05 at 09:21 -0400, Neal Cardwell wrote:
quoted hunk ↗ jump to hunk
Remove an icsk variable, which by convention should refer to an
inet_connection_sock rather than an inet_sock. In the process, make
the tcp_v6_early_demux() code and formatting a bit more like
tcp_v4_early_demux(), to ease comparisons and maintenance.

Signed-off-by: Neal Cardwell <ncardwell@google.com>
---
 net/ipv6/tcp_ipv6.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/net/ipv6/tcp_ipv6.c b/net/ipv6/tcp_ipv6.c
index 49c8903..491c41b 100644
--- a/net/ipv6/tcp_ipv6.c
+++ b/net/ipv6/tcp_ipv6.c
@@ -1740,11 +1740,11 @@ static void tcp_v6_early_demux(struct sk_buff *skb)
 		skb->destructor = sock_edemux;
 		if (sk->sk_state != TCP_TIME_WAIT) {
 			struct dst_entry *dst = sk->sk_rx_dst;
-			struct inet_sock *icsk = inet_sk(sk);
+
 			if (dst)
 				dst = dst_check(dst, inet6_sk(sk)->rx_dst_cookie);
 			if (dst &&
-			    icsk->rx_dst_ifindex == skb->skb_iif)
+			    inet_sk(sk)->rx_dst_ifindex == skb->skb_iif)
 				skb_dst_set_noref(skb, dst);
 		}
 	}
Hi Neal

I would wait net-next being opened, and do a full merge/cleanup

For example ipv6 uses :

if (!pskb_may_pull(skb, skb_transport_offset(skb) + 
                   sizeof(struct tcphdr))) 
th = tcp_hdr(skb);

while ipv4 uses :

if (!pskb_may_pull(skb, ip_hdrlen(skb) + sizeof(struct tcphdr)))
th = (struct tcphdr *) ((char *)iph + ip_hdrlen(skb));

It would be good to use the ipv6 variant (its less instructions and
cleaner)

Same for the "struct net *net = dev_net(skb->dev);" used in ipv4, while
ipv6 doesnt need this extra net variable.

Thanks
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help