diff options
Diffstat (limited to 'drivers/net/ehea/ehea_main.c')
-rw-r--r-- | drivers/net/ehea/ehea_main.c | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/drivers/net/ehea/ehea_main.c b/drivers/net/ehea/ehea_main.c index 7f8fcc2fa748..7b62336e6736 100644 --- a/drivers/net/ehea/ehea_main.c +++ b/drivers/net/ehea/ehea_main.c | |||
@@ -189,8 +189,8 @@ static void ehea_update_firmware_handles(void) | |||
189 | for (k = 0; k < EHEA_MAX_PORTS; k++) { | 189 | for (k = 0; k < EHEA_MAX_PORTS; k++) { |
190 | struct ehea_port *port = adapter->port[k]; | 190 | struct ehea_port *port = adapter->port[k]; |
191 | 191 | ||
192 | if (!port || (port->state != EHEA_PORT_UP) | 192 | if (!port || (port->state != EHEA_PORT_UP) || |
193 | || (num_ports == 0)) | 193 | (num_ports == 0)) |
194 | continue; | 194 | continue; |
195 | 195 | ||
196 | for (l = 0; | 196 | for (l = 0; |
@@ -657,8 +657,8 @@ static int get_skb_hdr(struct sk_buff *skb, void **iphdr, | |||
657 | static void ehea_proc_skb(struct ehea_port_res *pr, struct ehea_cqe *cqe, | 657 | static void ehea_proc_skb(struct ehea_port_res *pr, struct ehea_cqe *cqe, |
658 | struct sk_buff *skb) | 658 | struct sk_buff *skb) |
659 | { | 659 | { |
660 | int vlan_extracted = (cqe->status & EHEA_CQE_VLAN_TAG_XTRACT) | 660 | int vlan_extracted = ((cqe->status & EHEA_CQE_VLAN_TAG_XTRACT) && |
661 | && pr->port->vgrp; | 661 | pr->port->vgrp); |
662 | 662 | ||
663 | if (use_lro) { | 663 | if (use_lro) { |
664 | if (vlan_extracted) | 664 | if (vlan_extracted) |
@@ -1389,8 +1389,8 @@ out: | |||
1389 | 1389 | ||
1390 | int ehea_rem_smrs(struct ehea_port_res *pr) | 1390 | int ehea_rem_smrs(struct ehea_port_res *pr) |
1391 | { | 1391 | { |
1392 | if ((ehea_rem_mr(&pr->send_mr)) | 1392 | if ((ehea_rem_mr(&pr->send_mr)) || |
1393 | || (ehea_rem_mr(&pr->recv_mr))) | 1393 | (ehea_rem_mr(&pr->recv_mr))) |
1394 | return -EIO; | 1394 | return -EIO; |
1395 | else | 1395 | else |
1396 | return 0; | 1396 | return 0; |
@@ -2031,8 +2031,8 @@ static void ehea_xmit2(struct sk_buff *skb, struct net_device *dev, | |||
2031 | write_ip_start_end(swqe, skb); | 2031 | write_ip_start_end(swqe, skb); |
2032 | 2032 | ||
2033 | if (iph->protocol == IPPROTO_UDP) { | 2033 | if (iph->protocol == IPPROTO_UDP) { |
2034 | if ((iph->frag_off & IP_MF) | 2034 | if ((iph->frag_off & IP_MF) || |
2035 | || (iph->frag_off & IP_OFFSET)) | 2035 | (iph->frag_off & IP_OFFSET)) |
2036 | /* IP fragment, so don't change cs */ | 2036 | /* IP fragment, so don't change cs */ |
2037 | swqe->tx_control &= ~EHEA_SWQE_TCP_CHECKSUM; | 2037 | swqe->tx_control &= ~EHEA_SWQE_TCP_CHECKSUM; |
2038 | else | 2038 | else |
@@ -2077,8 +2077,8 @@ static void ehea_xmit3(struct sk_buff *skb, struct net_device *dev, | |||
2077 | write_tcp_offset_end(swqe, skb); | 2077 | write_tcp_offset_end(swqe, skb); |
2078 | 2078 | ||
2079 | } else if (iph->protocol == IPPROTO_UDP) { | 2079 | } else if (iph->protocol == IPPROTO_UDP) { |
2080 | if ((iph->frag_off & IP_MF) | 2080 | if ((iph->frag_off & IP_MF) || |
2081 | || (iph->frag_off & IP_OFFSET)) | 2081 | (iph->frag_off & IP_OFFSET)) |
2082 | /* IP fragment, so don't change cs */ | 2082 | /* IP fragment, so don't change cs */ |
2083 | swqe->tx_control |= EHEA_SWQE_CRC | 2083 | swqe->tx_control |= EHEA_SWQE_CRC |
2084 | | EHEA_SWQE_IMM_DATA_PRESENT; | 2084 | | EHEA_SWQE_IMM_DATA_PRESENT; |