diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2011-05-20 16:43:21 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2011-05-20 16:43:21 -0400 |
commit | 06f4e926d256d902dd9a53dcb400fd74974ce087 (patch) | |
tree | 0b438b67f5f0eff6fd617bc497a9dace6164a488 /drivers/scsi | |
parent | 8e7bfcbab3825d1b404d615cb1b54f44ff81f981 (diff) | |
parent | d93515611bbc70c2fe4db232e5feb448ed8e4cc9 (diff) |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6: (1446 commits)
macvlan: fix panic if lowerdev in a bond
tg3: Add braces around 5906 workaround.
tg3: Fix NETIF_F_LOOPBACK error
macvlan: remove one synchronize_rcu() call
networking: NET_CLS_ROUTE4 depends on INET
irda: Fix error propagation in ircomm_lmp_connect_response()
irda: Kill set but unused variable 'bytes' in irlan_check_command_param()
irda: Kill set but unused variable 'clen' in ircomm_connect_indication()
rxrpc: Fix set but unused variable 'usage' in rxrpc_get_transport()
be2net: Kill set but unused variable 'req' in lancer_fw_download()
irda: Kill set but unused vars 'saddr' and 'daddr' in irlan_provider_connect_indication()
atl1c: atl1c_resume() is only used when CONFIG_PM_SLEEP is defined.
rxrpc: Fix set but unused variable 'usage' in rxrpc_get_peer().
rxrpc: Kill set but unused variable 'local' in rxrpc_UDP_error_handler()
rxrpc: Kill set but unused variable 'sp' in rxrpc_process_connection()
rxrpc: Kill set but unused variable 'sp' in rxrpc_rotate_tx_window()
pkt_sched: Kill set but unused variable 'protocol' in tc_classify()
isdn: capi: Use pr_debug() instead of ifdefs.
tg3: Update version to 3.119
tg3: Apply rx_discards fix to 5719/5720
...
Fix up trivial conflicts in arch/x86/Kconfig and net/mac80211/agg-tx.c
as per Davem.
Diffstat (limited to 'drivers/scsi')
-rw-r--r-- | drivers/scsi/bnx2fc/bnx2fc_fcoe.c | 11 | ||||
-rw-r--r-- | drivers/scsi/cxgbi/libcxgbi.c | 10 | ||||
-rw-r--r-- | drivers/scsi/fcoe/fcoe.c | 11 |
3 files changed, 20 insertions, 12 deletions
diff --git a/drivers/scsi/bnx2fc/bnx2fc_fcoe.c b/drivers/scsi/bnx2fc/bnx2fc_fcoe.c index 662365676689..ab255fbc7f36 100644 --- a/drivers/scsi/bnx2fc/bnx2fc_fcoe.c +++ b/drivers/scsi/bnx2fc/bnx2fc_fcoe.c | |||
@@ -664,7 +664,7 @@ static void bnx2fc_link_speed_update(struct fc_lport *lport) | |||
664 | struct fcoe_port *port = lport_priv(lport); | 664 | struct fcoe_port *port = lport_priv(lport); |
665 | struct bnx2fc_hba *hba = port->priv; | 665 | struct bnx2fc_hba *hba = port->priv; |
666 | struct net_device *netdev = hba->netdev; | 666 | struct net_device *netdev = hba->netdev; |
667 | struct ethtool_cmd ecmd = { ETHTOOL_GSET }; | 667 | struct ethtool_cmd ecmd; |
668 | 668 | ||
669 | if (!dev_ethtool_get_settings(netdev, &ecmd)) { | 669 | if (!dev_ethtool_get_settings(netdev, &ecmd)) { |
670 | lport->link_supported_speeds &= | 670 | lport->link_supported_speeds &= |
@@ -675,12 +675,15 @@ static void bnx2fc_link_speed_update(struct fc_lport *lport) | |||
675 | if (ecmd.supported & SUPPORTED_10000baseT_Full) | 675 | if (ecmd.supported & SUPPORTED_10000baseT_Full) |
676 | lport->link_supported_speeds |= FC_PORTSPEED_10GBIT; | 676 | lport->link_supported_speeds |= FC_PORTSPEED_10GBIT; |
677 | 677 | ||
678 | if (ecmd.speed == SPEED_1000) | 678 | switch (ethtool_cmd_speed(&ecmd)) { |
679 | case SPEED_1000: | ||
679 | lport->link_speed = FC_PORTSPEED_1GBIT; | 680 | lport->link_speed = FC_PORTSPEED_1GBIT; |
680 | if (ecmd.speed == SPEED_10000) | 681 | break; |
682 | case SPEED_10000: | ||
681 | lport->link_speed = FC_PORTSPEED_10GBIT; | 683 | lport->link_speed = FC_PORTSPEED_10GBIT; |
684 | break; | ||
685 | } | ||
682 | } | 686 | } |
683 | return; | ||
684 | } | 687 | } |
685 | static int bnx2fc_link_ok(struct fc_lport *lport) | 688 | static int bnx2fc_link_ok(struct fc_lport *lport) |
686 | { | 689 | { |
diff --git a/drivers/scsi/cxgbi/libcxgbi.c b/drivers/scsi/cxgbi/libcxgbi.c index de764ea7419d..a2a9c7c6c643 100644 --- a/drivers/scsi/cxgbi/libcxgbi.c +++ b/drivers/scsi/cxgbi/libcxgbi.c | |||
@@ -450,12 +450,13 @@ static struct cxgbi_sock *cxgbi_sock_create(struct cxgbi_device *cdev) | |||
450 | return csk; | 450 | return csk; |
451 | } | 451 | } |
452 | 452 | ||
453 | static struct rtable *find_route_ipv4(__be32 saddr, __be32 daddr, | 453 | static struct rtable *find_route_ipv4(struct flowi4 *fl4, |
454 | __be32 saddr, __be32 daddr, | ||
454 | __be16 sport, __be16 dport, u8 tos) | 455 | __be16 sport, __be16 dport, u8 tos) |
455 | { | 456 | { |
456 | struct rtable *rt; | 457 | struct rtable *rt; |
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; |
@@ -470,6 +471,7 @@ static struct cxgbi_sock *cxgbi_check_route(struct sockaddr *dst_addr) | |||
470 | struct net_device *ndev; | 471 | struct net_device *ndev; |
471 | struct cxgbi_device *cdev; | 472 | struct cxgbi_device *cdev; |
472 | struct rtable *rt = NULL; | 473 | struct rtable *rt = NULL; |
474 | struct flowi4 fl4; | ||
473 | struct cxgbi_sock *csk = NULL; | 475 | struct cxgbi_sock *csk = NULL; |
474 | unsigned int mtu = 0; | 476 | unsigned int mtu = 0; |
475 | int port = 0xFFFF; | 477 | int port = 0xFFFF; |
@@ -482,7 +484,7 @@ static struct cxgbi_sock *cxgbi_check_route(struct sockaddr *dst_addr) | |||
482 | goto err_out; | 484 | goto err_out; |
483 | } | 485 | } |
484 | 486 | ||
485 | rt = find_route_ipv4(0, daddr->sin_addr.s_addr, 0, daddr->sin_port, 0); | 487 | rt = find_route_ipv4(&fl4, 0, daddr->sin_addr.s_addr, 0, daddr->sin_port, 0); |
486 | if (!rt) { | 488 | if (!rt) { |
487 | pr_info("no route to ipv4 0x%x, port %u.\n", | 489 | pr_info("no route to ipv4 0x%x, port %u.\n", |
488 | daddr->sin_addr.s_addr, daddr->sin_port); | 490 | daddr->sin_addr.s_addr, daddr->sin_port); |
@@ -531,7 +533,7 @@ static struct cxgbi_sock *cxgbi_check_route(struct sockaddr *dst_addr) | |||
531 | csk->daddr.sin_addr.s_addr = daddr->sin_addr.s_addr; | 533 | csk->daddr.sin_addr.s_addr = daddr->sin_addr.s_addr; |
532 | csk->daddr.sin_port = daddr->sin_port; | 534 | csk->daddr.sin_port = daddr->sin_port; |
533 | csk->daddr.sin_family = daddr->sin_family; | 535 | csk->daddr.sin_family = daddr->sin_family; |
534 | csk->saddr.sin_addr.s_addr = rt->rt_src; | 536 | csk->saddr.sin_addr.s_addr = fl4.saddr; |
535 | 537 | ||
536 | return csk; | 538 | return csk; |
537 | 539 | ||
diff --git a/drivers/scsi/fcoe/fcoe.c b/drivers/scsi/fcoe/fcoe.c index 5d3700dc6f8c..cc23bd9480b2 100644 --- a/drivers/scsi/fcoe/fcoe.c +++ b/drivers/scsi/fcoe/fcoe.c | |||
@@ -1952,7 +1952,7 @@ out_nodev: | |||
1952 | int fcoe_link_speed_update(struct fc_lport *lport) | 1952 | int fcoe_link_speed_update(struct fc_lport *lport) |
1953 | { | 1953 | { |
1954 | struct net_device *netdev = fcoe_netdev(lport); | 1954 | struct net_device *netdev = fcoe_netdev(lport); |
1955 | struct ethtool_cmd ecmd = { ETHTOOL_GSET }; | 1955 | struct ethtool_cmd ecmd; |
1956 | 1956 | ||
1957 | if (!dev_ethtool_get_settings(netdev, &ecmd)) { | 1957 | if (!dev_ethtool_get_settings(netdev, &ecmd)) { |
1958 | lport->link_supported_speeds &= | 1958 | lport->link_supported_speeds &= |
@@ -1963,11 +1963,14 @@ int fcoe_link_speed_update(struct fc_lport *lport) | |||
1963 | if (ecmd.supported & SUPPORTED_10000baseT_Full) | 1963 | if (ecmd.supported & SUPPORTED_10000baseT_Full) |
1964 | lport->link_supported_speeds |= | 1964 | lport->link_supported_speeds |= |
1965 | FC_PORTSPEED_10GBIT; | 1965 | FC_PORTSPEED_10GBIT; |
1966 | if (ecmd.speed == SPEED_1000) | 1966 | switch (ethtool_cmd_speed(&ecmd)) { |
1967 | case SPEED_1000: | ||
1967 | lport->link_speed = FC_PORTSPEED_1GBIT; | 1968 | lport->link_speed = FC_PORTSPEED_1GBIT; |
1968 | if (ecmd.speed == SPEED_10000) | 1969 | break; |
1970 | case SPEED_10000: | ||
1969 | lport->link_speed = FC_PORTSPEED_10GBIT; | 1971 | lport->link_speed = FC_PORTSPEED_10GBIT; |
1970 | 1972 | break; | |
1973 | } | ||
1971 | return 0; | 1974 | return 0; |
1972 | } | 1975 | } |
1973 | return -1; | 1976 | return -1; |