aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--include/net/route.h4
-rw-r--r--net/dccp/ipv4.c2
-rw-r--r--net/ipv4/af_inet.c2
-rw-r--r--net/ipv4/datagram.c2
-rw-r--r--net/ipv4/tcp_ipv4.c2
-rw-r--r--net/l2tp/l2tp_ip.c2
6 files changed, 7 insertions, 7 deletions
diff --git a/include/net/route.h b/include/net/route.h
index b3f89ad04e0b..5e0826d1c0e0 100644
--- a/include/net/route.h
+++ b/include/net/route.h
@@ -168,7 +168,7 @@ static inline char rt_tos2priority(u8 tos)
168static inline int ip_route_connect(struct rtable **rp, __be32 dst, 168static inline int ip_route_connect(struct rtable **rp, __be32 dst,
169 __be32 src, u32 tos, int oif, u8 protocol, 169 __be32 src, u32 tos, int oif, u8 protocol,
170 __be16 sport, __be16 dport, struct sock *sk, 170 __be16 sport, __be16 dport, struct sock *sk,
171 int flags) 171 bool can_sleep)
172{ 172{
173 struct flowi fl = { .oif = oif, 173 struct flowi fl = { .oif = oif,
174 .mark = sk->sk_mark, 174 .mark = sk->sk_mark,
@@ -196,7 +196,7 @@ static inline int ip_route_connect(struct rtable **rp, __be32 dst,
196 *rp = NULL; 196 *rp = NULL;
197 } 197 }
198 security_sk_classify_flow(sk, &fl); 198 security_sk_classify_flow(sk, &fl);
199 return ip_route_output_flow(net, rp, &fl, sk, flags); 199 return ip_route_output_flow(net, rp, &fl, sk, can_sleep ? 1 : 0);
200} 200}
201 201
202static inline int ip_route_newports(struct rtable **rp, u8 protocol, 202static inline int ip_route_newports(struct rtable **rp, u8 protocol,
diff --git a/net/dccp/ipv4.c b/net/dccp/ipv4.c
index 937989199c80..8372d5c571a0 100644
--- a/net/dccp/ipv4.c
+++ b/net/dccp/ipv4.c
@@ -69,7 +69,7 @@ int dccp_v4_connect(struct sock *sk, struct sockaddr *uaddr, int addr_len)
69 tmp = ip_route_connect(&rt, nexthop, inet->inet_saddr, 69 tmp = ip_route_connect(&rt, nexthop, inet->inet_saddr,
70 RT_CONN_FLAGS(sk), sk->sk_bound_dev_if, 70 RT_CONN_FLAGS(sk), sk->sk_bound_dev_if,
71 IPPROTO_DCCP, 71 IPPROTO_DCCP,
72 orig_sport, orig_dport, sk, 1); 72 orig_sport, orig_dport, sk, true);
73 if (tmp < 0) 73 if (tmp < 0)
74 return tmp; 74 return tmp;
75 75
diff --git a/net/ipv4/af_inet.c b/net/ipv4/af_inet.c
index 7ceb80447631..d16687db9713 100644
--- a/net/ipv4/af_inet.c
+++ b/net/ipv4/af_inet.c
@@ -1115,7 +1115,7 @@ static int inet_sk_reselect_saddr(struct sock *sk)
1115 RT_CONN_FLAGS(sk), 1115 RT_CONN_FLAGS(sk),
1116 sk->sk_bound_dev_if, 1116 sk->sk_bound_dev_if,
1117 sk->sk_protocol, 1117 sk->sk_protocol,
1118 inet->inet_sport, inet->inet_dport, sk, 0); 1118 inet->inet_sport, inet->inet_dport, sk, false);
1119 if (err) 1119 if (err)
1120 return err; 1120 return err;
1121 1121
diff --git a/net/ipv4/datagram.c b/net/ipv4/datagram.c
index 174be6caa5c8..eaee1edd2dd7 100644
--- a/net/ipv4/datagram.c
+++ b/net/ipv4/datagram.c
@@ -49,7 +49,7 @@ int ip4_datagram_connect(struct sock *sk, struct sockaddr *uaddr, int addr_len)
49 err = ip_route_connect(&rt, usin->sin_addr.s_addr, saddr, 49 err = ip_route_connect(&rt, usin->sin_addr.s_addr, saddr,
50 RT_CONN_FLAGS(sk), oif, 50 RT_CONN_FLAGS(sk), oif,
51 sk->sk_protocol, 51 sk->sk_protocol,
52 inet->inet_sport, usin->sin_port, sk, 1); 52 inet->inet_sport, usin->sin_port, sk, true);
53 if (err) { 53 if (err) {
54 if (err == -ENETUNREACH) 54 if (err == -ENETUNREACH)
55 IP_INC_STATS_BH(sock_net(sk), IPSTATS_MIB_OUTNOROUTES); 55 IP_INC_STATS_BH(sock_net(sk), IPSTATS_MIB_OUTNOROUTES);
diff --git a/net/ipv4/tcp_ipv4.c b/net/ipv4/tcp_ipv4.c
index 27a0cc8cc888..05bc6d9455fc 100644
--- a/net/ipv4/tcp_ipv4.c
+++ b/net/ipv4/tcp_ipv4.c
@@ -173,7 +173,7 @@ int tcp_v4_connect(struct sock *sk, struct sockaddr *uaddr, int addr_len)
173 tmp = ip_route_connect(&rt, nexthop, inet->inet_saddr, 173 tmp = ip_route_connect(&rt, nexthop, inet->inet_saddr,
174 RT_CONN_FLAGS(sk), sk->sk_bound_dev_if, 174 RT_CONN_FLAGS(sk), sk->sk_bound_dev_if,
175 IPPROTO_TCP, 175 IPPROTO_TCP,
176 orig_sport, orig_dport, sk, 1); 176 orig_sport, orig_dport, sk, true);
177 if (tmp < 0) { 177 if (tmp < 0) {
178 if (tmp == -ENETUNREACH) 178 if (tmp == -ENETUNREACH)
179 IP_INC_STATS_BH(sock_net(sk), IPSTATS_MIB_OUTNOROUTES); 179 IP_INC_STATS_BH(sock_net(sk), IPSTATS_MIB_OUTNOROUTES);
diff --git a/net/l2tp/l2tp_ip.c b/net/l2tp/l2tp_ip.c
index 110efb704c9b..28e876a6b1dd 100644
--- a/net/l2tp/l2tp_ip.c
+++ b/net/l2tp/l2tp_ip.c
@@ -323,7 +323,7 @@ static int l2tp_ip_connect(struct sock *sk, struct sockaddr *uaddr, int addr_len
323 rc = ip_route_connect(&rt, lsa->l2tp_addr.s_addr, saddr, 323 rc = ip_route_connect(&rt, lsa->l2tp_addr.s_addr, saddr,
324 RT_CONN_FLAGS(sk), oif, 324 RT_CONN_FLAGS(sk), oif,
325 IPPROTO_L2TP, 325 IPPROTO_L2TP,
326 0, 0, sk, 1); 326 0, 0, sk, true);
327 if (rc) { 327 if (rc) {
328 if (rc == -ENETUNREACH) 328 if (rc == -ENETUNREACH)
329 IP_INC_STATS_BH(&init_net, IPSTATS_MIB_OUTNOROUTES); 329 IP_INC_STATS_BH(&init_net, IPSTATS_MIB_OUTNOROUTES);