diff options
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/infiniband/hw/cxgb3/iwch_cm.c | 3 | ||||
-rw-r--r-- | drivers/infiniband/hw/cxgb4/cm.c | 3 | ||||
-rw-r--r-- | drivers/net/pptp.c | 6 | ||||
-rw-r--r-- | drivers/scsi/cxgbi/libcxgbi.c | 3 |
4 files changed, 10 insertions, 5 deletions
diff --git a/drivers/infiniband/hw/cxgb3/iwch_cm.c b/drivers/infiniband/hw/cxgb3/iwch_cm.c index 3216bcad7e82..239184138994 100644 --- a/drivers/infiniband/hw/cxgb3/iwch_cm.c +++ b/drivers/infiniband/hw/cxgb3/iwch_cm.c | |||
@@ -338,8 +338,9 @@ static struct rtable *find_route(struct t3cdev *dev, __be32 local_ip, | |||
338 | __be16 peer_port, u8 tos) | 338 | __be16 peer_port, u8 tos) |
339 | { | 339 | { |
340 | struct rtable *rt; | 340 | struct rtable *rt; |
341 | struct flowi4 fl4; | ||
341 | 342 | ||
342 | rt = ip_route_output_ports(&init_net, NULL, peer_ip, local_ip, | 343 | rt = ip_route_output_ports(&init_net, &fl4, NULL, peer_ip, local_ip, |
343 | peer_port, local_port, IPPROTO_TCP, | 344 | peer_port, local_port, IPPROTO_TCP, |
344 | tos, 0); | 345 | tos, 0); |
345 | if (IS_ERR(rt)) | 346 | if (IS_ERR(rt)) |
diff --git a/drivers/infiniband/hw/cxgb4/cm.c b/drivers/infiniband/hw/cxgb4/cm.c index 9d8dcfab2b38..6aa53cd69478 100644 --- a/drivers/infiniband/hw/cxgb4/cm.c +++ b/drivers/infiniband/hw/cxgb4/cm.c | |||
@@ -315,8 +315,9 @@ static struct rtable *find_route(struct c4iw_dev *dev, __be32 local_ip, | |||
315 | __be16 peer_port, u8 tos) | 315 | __be16 peer_port, u8 tos) |
316 | { | 316 | { |
317 | struct rtable *rt; | 317 | struct rtable *rt; |
318 | struct flowi4 fl4; | ||
318 | 319 | ||
319 | rt = ip_route_output_ports(&init_net, NULL, peer_ip, local_ip, | 320 | rt = ip_route_output_ports(&init_net, &fl4, NULL, peer_ip, local_ip, |
320 | peer_port, local_port, IPPROTO_TCP, | 321 | peer_port, local_port, IPPROTO_TCP, |
321 | tos, 0); | 322 | tos, 0); |
322 | if (IS_ERR(rt)) | 323 | if (IS_ERR(rt)) |
diff --git a/drivers/net/pptp.c b/drivers/net/pptp.c index 51dfcf8023c7..e771e8d27eb7 100644 --- a/drivers/net/pptp.c +++ b/drivers/net/pptp.c | |||
@@ -175,6 +175,7 @@ static int pptp_xmit(struct ppp_channel *chan, struct sk_buff *skb) | |||
175 | struct pptp_opt *opt = &po->proto.pptp; | 175 | struct pptp_opt *opt = &po->proto.pptp; |
176 | struct pptp_gre_header *hdr; | 176 | struct pptp_gre_header *hdr; |
177 | unsigned int header_len = sizeof(*hdr); | 177 | unsigned int header_len = sizeof(*hdr); |
178 | struct flowi4 fl4; | ||
178 | int islcp; | 179 | int islcp; |
179 | int len; | 180 | int len; |
180 | unsigned char *data; | 181 | unsigned char *data; |
@@ -189,7 +190,7 @@ static int pptp_xmit(struct ppp_channel *chan, struct sk_buff *skb) | |||
189 | if (sk_pppox(po)->sk_state & PPPOX_DEAD) | 190 | if (sk_pppox(po)->sk_state & PPPOX_DEAD) |
190 | goto tx_error; | 191 | goto tx_error; |
191 | 192 | ||
192 | rt = ip_route_output_ports(&init_net, NULL, | 193 | rt = ip_route_output_ports(&init_net, &fl4, NULL, |
193 | opt->dst_addr.sin_addr.s_addr, | 194 | opt->dst_addr.sin_addr.s_addr, |
194 | opt->src_addr.sin_addr.s_addr, | 195 | opt->src_addr.sin_addr.s_addr, |
195 | 0, 0, IPPROTO_GRE, | 196 | 0, 0, IPPROTO_GRE, |
@@ -434,6 +435,7 @@ static int pptp_connect(struct socket *sock, struct sockaddr *uservaddr, | |||
434 | struct pppox_sock *po = pppox_sk(sk); | 435 | struct pppox_sock *po = pppox_sk(sk); |
435 | struct pptp_opt *opt = &po->proto.pptp; | 436 | struct pptp_opt *opt = &po->proto.pptp; |
436 | struct rtable *rt; | 437 | struct rtable *rt; |
438 | struct flowi4 fl4; | ||
437 | int error = 0; | 439 | int error = 0; |
438 | 440 | ||
439 | if (sp->sa_protocol != PX_PROTO_PPTP) | 441 | if (sp->sa_protocol != PX_PROTO_PPTP) |
@@ -463,7 +465,7 @@ static int pptp_connect(struct socket *sock, struct sockaddr *uservaddr, | |||
463 | po->chan.private = sk; | 465 | po->chan.private = sk; |
464 | po->chan.ops = &pptp_chan_ops; | 466 | po->chan.ops = &pptp_chan_ops; |
465 | 467 | ||
466 | rt = ip_route_output_ports(&init_net, sk, | 468 | rt = ip_route_output_ports(&init_net, &fl4, sk, |
467 | opt->dst_addr.sin_addr.s_addr, | 469 | opt->dst_addr.sin_addr.s_addr, |
468 | opt->src_addr.sin_addr.s_addr, | 470 | opt->src_addr.sin_addr.s_addr, |
469 | 0, 0, | 471 | 0, 0, |
diff --git a/drivers/scsi/cxgbi/libcxgbi.c b/drivers/scsi/cxgbi/libcxgbi.c index de764ea7419d..0c33d250c7d7 100644 --- a/drivers/scsi/cxgbi/libcxgbi.c +++ b/drivers/scsi/cxgbi/libcxgbi.c | |||
@@ -454,8 +454,9 @@ static struct rtable *find_route_ipv4(__be32 saddr, __be32 daddr, | |||
454 | __be16 sport, __be16 dport, u8 tos) | 454 | __be16 sport, __be16 dport, u8 tos) |
455 | { | 455 | { |
456 | struct rtable *rt; | 456 | struct rtable *rt; |
457 | struct flowi4 fl4; | ||
457 | 458 | ||
458 | rt = ip_route_output_ports(&init_net, NULL, daddr, saddr, | 459 | rt = ip_route_output_ports(&init_net, &fl4, NULL, daddr, saddr, |
459 | dport, sport, IPPROTO_TCP, tos, 0); | 460 | dport, sport, IPPROTO_TCP, tos, 0); |
460 | if (IS_ERR(rt)) | 461 | if (IS_ERR(rt)) |
461 | return NULL; | 462 | return NULL; |