提交 86001f24 编写于 作者: H Hiral Shah 提交者: Christoph Hellwig

fnic: assign FIP_ALL_FCF_MACS to fcoe_all_fcfs

1) Assgning FIP_ALL_FCF_MACS to fcoe_all_fcfs allows VLAN request to be sent
to correct Mac address for VLAN Discovery otherwise VLAN request will be
sent to invalid address hence FLOGI never happens.

2) Simplify the copy_and_format_trace_data code and log the correct Link event
for fnic control path tracing in case of link status UP->UP.

3) Increment Fnic driver version
Signed-off-by: NHiral Shah <hishah@cisco.com>
Signed-off-by: NSesidhar Baddela <sebaddel@cisco.com>
Signed-off-by: NChristoph Hellwig <hch@lst.de>
上级 6b383979
...@@ -39,7 +39,7 @@ ...@@ -39,7 +39,7 @@
#define DRV_NAME "fnic" #define DRV_NAME "fnic"
#define DRV_DESCRIPTION "Cisco FCoE HBA Driver" #define DRV_DESCRIPTION "Cisco FCoE HBA Driver"
#define DRV_VERSION "1.6.0.10" #define DRV_VERSION "1.6.0.11"
#define PFX DRV_NAME ": " #define PFX DRV_NAME ": "
#define DFX DRV_NAME "%d: " #define DFX DRV_NAME "%d: "
......
...@@ -35,7 +35,7 @@ ...@@ -35,7 +35,7 @@
#include "cq_enet_desc.h" #include "cq_enet_desc.h"
#include "cq_exch_desc.h" #include "cq_exch_desc.h"
static u8 fcoe_all_fcfs[ETH_ALEN]; static u8 fcoe_all_fcfs[ETH_ALEN] = FIP_ALL_FCF_MACS;
struct workqueue_struct *fnic_fip_queue; struct workqueue_struct *fnic_fip_queue;
struct workqueue_struct *fnic_event_queue; struct workqueue_struct *fnic_event_queue;
...@@ -101,13 +101,14 @@ void fnic_handle_link(struct work_struct *work) ...@@ -101,13 +101,14 @@ void fnic_handle_link(struct work_struct *work)
FNIC_FCS_DBG(KERN_DEBUG, fnic->lport->host, FNIC_FCS_DBG(KERN_DEBUG, fnic->lport->host,
"link up\n"); "link up\n");
fcoe_ctlr_link_up(&fnic->ctlr); fcoe_ctlr_link_up(&fnic->ctlr);
} else } else {
/* UP -> UP */ /* UP -> UP */
spin_unlock_irqrestore(&fnic->fnic_lock, flags); spin_unlock_irqrestore(&fnic->fnic_lock, flags);
fnic_fc_trace_set_data( fnic_fc_trace_set_data(
fnic->lport->host->host_no, FNIC_FC_LE, fnic->lport->host->host_no, FNIC_FC_LE,
"Link Status: UP_UP", "Link Status: UP_UP",
strlen("Link Status: UP_UP")); strlen("Link Status: UP_UP"));
}
} }
} else if (fnic->link_status) { } else if (fnic->link_status) {
/* DOWN -> UP */ /* DOWN -> UP */
......
...@@ -743,7 +743,7 @@ void copy_and_format_trace_data(struct fc_trace_hdr *tdata, ...@@ -743,7 +743,7 @@ void copy_and_format_trace_data(struct fc_trace_hdr *tdata,
fmt = "%02d:%02d:%04ld %02d:%02d:%02d.%09lu ns%8x %c%8x\t"; fmt = "%02d:%02d:%04ld %02d:%02d:%02d.%09lu ns%8x %c%8x\t";
len += snprintf(fnic_dbgfs_prt->buffer + len, len += snprintf(fnic_dbgfs_prt->buffer + len,
(fnic_fc_trace_max_pages * PAGE_SIZE * 3) - len, max_size - len,
fmt, fmt,
tm.tm_mon + 1, tm.tm_mday, tm.tm_year + 1900, tm.tm_mon + 1, tm.tm_mday, tm.tm_year + 1900,
tm.tm_hour, tm.tm_min, tm.tm_sec, tm.tm_hour, tm.tm_min, tm.tm_sec,
...@@ -767,8 +767,7 @@ void copy_and_format_trace_data(struct fc_trace_hdr *tdata, ...@@ -767,8 +767,7 @@ void copy_and_format_trace_data(struct fc_trace_hdr *tdata,
j == ethhdr_len + fcoehdr_len + fchdr_len || j == ethhdr_len + fcoehdr_len + fchdr_len ||
(i > 3 && j%fchdr_len == 0)) { (i > 3 && j%fchdr_len == 0)) {
len += snprintf(fnic_dbgfs_prt->buffer len += snprintf(fnic_dbgfs_prt->buffer
+ len, (fnic_fc_trace_max_pages + len, max_size - len,
* PAGE_SIZE * 3) - len,
"\n\t\t\t\t\t\t\t\t"); "\n\t\t\t\t\t\t\t\t");
i++; i++;
} }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册