mirror of https://gitee.com/openkylin/linux.git
ipv4: Get route daddr from flow key in tcp_v4_connect().
Now that output route lookups update the flow with destination address selection, we can fetch it from fl4->daddr instead of rt->rt_dst Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
072d8c9414
commit
d4fb3d74d7
|
@ -190,7 +190,7 @@ int tcp_v4_connect(struct sock *sk, struct sockaddr *uaddr, int addr_len)
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!inet_opt || !inet_opt->opt.srr)
|
if (!inet_opt || !inet_opt->opt.srr)
|
||||||
daddr = rt->rt_dst;
|
daddr = fl4.daddr;
|
||||||
|
|
||||||
if (!inet->inet_saddr)
|
if (!inet->inet_saddr)
|
||||||
inet->inet_saddr = fl4.saddr;
|
inet->inet_saddr = fl4.saddr;
|
||||||
|
@ -204,7 +204,7 @@ int tcp_v4_connect(struct sock *sk, struct sockaddr *uaddr, int addr_len)
|
||||||
}
|
}
|
||||||
|
|
||||||
if (tcp_death_row.sysctl_tw_recycle &&
|
if (tcp_death_row.sysctl_tw_recycle &&
|
||||||
!tp->rx_opt.ts_recent_stamp && rt->rt_dst == daddr) {
|
!tp->rx_opt.ts_recent_stamp && fl4.daddr == daddr) {
|
||||||
struct inet_peer *peer = rt_get_peer(rt);
|
struct inet_peer *peer = rt_get_peer(rt);
|
||||||
/*
|
/*
|
||||||
* VJ's idea. We save last timestamp seen from
|
* VJ's idea. We save last timestamp seen from
|
||||||
|
|
Loading…
Reference in New Issue