fnic: assign FIP_ALL_FCF_MACS to fcoe_all_fcfs
authorHiral Shah <hishah@cisco.com>
Sat, 3 May 2014 00:46:31 +0000 (17:46 -0700)
committerChristoph Hellwig <hch@lst.de>
Tue, 16 Sep 2014 16:10:02 +0000 (09:10 -0700)
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: Hiral Shah <hishah@cisco.com>
Signed-off-by: Sesidhar Baddela <sebaddel@cisco.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
drivers/scsi/fnic/fnic.h
drivers/scsi/fnic/fnic_fcs.c
drivers/scsi/fnic/fnic_trace.c

index 1d3521e13d77b5322d3ed2bf2fd20247a2f73989..bf8d34c26f13ffb99dcb6c6d616303a80076cc5e 100644 (file)
@@ -39,7 +39,7 @@
 
 #define DRV_NAME               "fnic"
 #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 DFX                     DRV_NAME "%d: "
 
index 1b948f633fc555f7b99a48cfe61941f0e6788f1a..f3984b48f8e96e19f92bd07f11467a625f3eae0c 100644 (file)
@@ -35,7 +35,7 @@
 #include "cq_enet_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_event_queue;
 
@@ -101,13 +101,14 @@ void fnic_handle_link(struct work_struct *work)
                                FNIC_FCS_DBG(KERN_DEBUG, fnic->lport->host,
                                             "link up\n");
                                fcoe_ctlr_link_up(&fnic->ctlr);
-                       } else
+                       } else {
                                /* UP -> UP */
                                spin_unlock_irqrestore(&fnic->fnic_lock, flags);
                                fnic_fc_trace_set_data(
                                        fnic->lport->host->host_no, FNIC_FC_LE,
                                        "Link Status: UP_UP",
                                        strlen("Link Status: UP_UP"));
+                       }
                }
        } else if (fnic->link_status) {
                /* DOWN -> UP */
index c77285926827838d851114da691e09ec70ae3228..121a5d7e98c44b60552eb06383349cc5c8621f05 100644 (file)
@@ -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";
        len += snprintf(fnic_dbgfs_prt->buffer + len,
-               (fnic_fc_trace_max_pages * PAGE_SIZE * 3) - len,
+               max_size - len,
                fmt,
                tm.tm_mon + 1, tm.tm_mday, tm.tm_year + 1900,
                tm.tm_hour, tm.tm_min, tm.tm_sec,
@@ -767,8 +767,7 @@ void copy_and_format_trace_data(struct fc_trace_hdr *tdata,
                                j == ethhdr_len + fcoehdr_len + fchdr_len ||
                                (i > 3 && j%fchdr_len == 0)) {
                                len += snprintf(fnic_dbgfs_prt->buffer
-                                       + len, (fnic_fc_trace_max_pages
-                                       * PAGE_SIZE * 3) - len,
+                                       + len, max_size - len,
                                        "\n\t\t\t\t\t\t\t\t");
                                i++;
                        }