On 3/24/21 3:41 PM, Joe Perches wrote:
> On Tue, 2021-03-23 at 10:27 -0700, ldun...@suse.com wrote:
>> From: Lee Duncan <ldun...@suse.com>
>>
>> Commit b43abcbbd5b1 ("scsi: fnic: Ratelimit printks to avoid
>> looding when vlan is not set by the switch.i") added
>> printk_ratelimit() in front of a couple of debug-mode
>> messages, to reduce logging overrun when debugging the
>> driver. The code:
>>
>>>           if (printk_ratelimit())
>>>                   FNIC_FCS_DBG(KERN_DEBUG, fnic->lport->host,
>>>                             "Start VLAN Discovery\n");
>>
>> ends up calling printk_ratelimit() quite often, triggering
>> many kernel messages about callbacks being surpressed.
>>
>> The fix is to decompose FNIC_FCS_DBG(), then change the order
>> of checks so that printk_ratelimit() is only called if
>> driver debugging is enabled.
> 
> Please make sure to cc the fnic maintainers when submitting patches
> to their drivers.
> 
> $ ./scripts/get_maintainer.pl drivers/scsi/fnic/
> Satish Kharat <satis...@cisco.com> (supporter:CISCO FCOE HBA DRIVER)
> Sesidhar Baddela <sebad...@cisco.com> (supporter:CISCO FCOE HBA DRIVER)
> Karan Tilak Kumar <karti...@cisco.com> (supporter:CISCO FCOE HBA DRIVER)
> "James E.J. Bottomley" <j...@linux.ibm.com> (maintainer:SCSI SUBSYSTEM)
> "Martin K. Petersen" <martin.peter...@oracle.com> (maintainer:SCSI SUBSYSTEM)
> linux-s...@vger.kernel.org (open list:CISCO FCOE HBA DRIVER)
> linux-kernel@vger.kernel.org (open list)
> 
> 
> My preference would be to rewrite the FNIC_<FOO>_DBG macros to use
> a single fnic_dbg macro and add a new fnic_dbg_ratelimited macro.
> 
> Something like the below:
> 
> This converts a few uses at KERN_INFO to KERN_DEBUG, only uses fnic
> and adds a macro concatenation instead of multiple macros.
> 
> Miscellanea:
> 
> o Add missing newlines
> o Coalesce formats
> o Align arguments
> 
> ---
> 
> compile tested only
> 
>  drivers/scsi/fnic/fnic.h      |  45 +++----
>  drivers/scsi/fnic/fnic_fcs.c  |  92 +++++---------
>  drivers/scsi/fnic/fnic_isr.c  |   9 +-
>  drivers/scsi/fnic/fnic_main.c |   9 +-
>  drivers/scsi/fnic/fnic_scsi.c | 280 
> ++++++++++++++++--------------------------
>  5 files changed, 162 insertions(+), 273 deletions(-)
> 
> diff --git a/drivers/scsi/fnic/fnic.h b/drivers/scsi/fnic/fnic.h
> index 69f373b53132..f12cd6ed9296 100644
> --- a/drivers/scsi/fnic/fnic.h
> +++ b/drivers/scsi/fnic/fnic.h
> @@ -130,36 +130,27 @@
>  extern unsigned int fnic_log_level;
>  extern unsigned int io_completions;
>  
> -#define FNIC_MAIN_LOGGING 0x01
> -#define FNIC_FCS_LOGGING 0x02
> -#define FNIC_SCSI_LOGGING 0x04
> -#define FNIC_ISR_LOGGING 0x08
> -
> -#define FNIC_CHECK_LOGGING(LEVEL, CMD)                               \
> -do {                                                         \
> -     if (unlikely(fnic_log_level & LEVEL))                   \
> -             do {                                            \
> -                     CMD;                                    \
> -             } while (0);                                    \
> +#define FNIC_DBG_MAIN        0x01
> +#define FNIC_DBG_FCS 0x02
> +#define FNIC_DBG_SCSI        0x04
> +#define FNIC_DBG_ISR 0x08
> +
> +#define fnic_dbg(fnic, TYPE, fmt, ...)                                       
> \
> +do {                                                                 \
> +     if (unlikely(fnic_log_level & FNIC_DBG_##TYPE))                 \
> +             shost_printk(KERN_DEBUG, (fnic)->lport->host,           \
> +                          fmt, ##__VA_ARGS__);                       \
>  } while (0)
>  
> -#define FNIC_MAIN_DBG(kern_level, host, fmt, args...)                \
> -     FNIC_CHECK_LOGGING(FNIC_MAIN_LOGGING,                   \
> -                      shost_printk(kern_level, host, fmt, ##args);)
> -
> -#define FNIC_FCS_DBG(kern_level, host, fmt, args...)         \
> -     FNIC_CHECK_LOGGING(FNIC_FCS_LOGGING,                    \
> -                      shost_printk(kern_level, host, fmt, ##args);)
> -
> -#define FNIC_SCSI_DBG(kern_level, host, fmt, args...)                \
> -     FNIC_CHECK_LOGGING(FNIC_SCSI_LOGGING,                   \
> -                      shost_printk(kern_level, host, fmt, ##args);)
> -
> -#define FNIC_ISR_DBG(kern_level, host, fmt, args...)         \
> -     FNIC_CHECK_LOGGING(FNIC_ISR_LOGGING,                    \
> -                      shost_printk(kern_level, host, fmt, ##args);)
> +#define fnic_dbg_ratelimited(fnic, TYPE, fmt, ...)                   \
> +do {                                                                 \
> +     if (unlikely(fnic_log_level & FNIC_DBG_##TYPE) &&               \
> +         printk_ratelimit())                                         \
> +             shost_printk(KERN_DEBUG, (fnic)->lport->host,           \
> +                          fmt, ##__VA_ARGS__);                       \
> +} while (0)
>  
> -#define FNIC_MAIN_NOTE(kern_level, host, fmt, args...)          \
> +#define FNIC_MAIN_NOTE(kern_level, host, fmt, args...)       \
>       shost_printk(kern_level, host, fmt, ##args)
>  
>  extern const char *fnic_state_str[];
> diff --git a/drivers/scsi/fnic/fnic_fcs.c b/drivers/scsi/fnic/fnic_fcs.c
> index 881c4823d7e2..81eb278ea025 100644
> --- a/drivers/scsi/fnic/fnic_fcs.c
> +++ b/drivers/scsi/fnic/fnic_fcs.c
> @@ -75,9 +75,8 @@ void fnic_handle_link(struct work_struct *work)
>       atomic64_set(&fnic->fnic_stats.misc_stats.current_port_speed,
>                       new_port_speed);
>       if (old_port_speed != new_port_speed)
> -             FNIC_MAIN_DBG(KERN_INFO, fnic->lport->host,
> -                             "Current vnic speed set to :  %llu\n",
> -                             new_port_speed);
> +             fnic_dbg(fnic, MAIN, "Current vnic speed set to: %llu\n",
> +                      new_port_speed);
>  
>       switch (vnic_dev_port_speed(fnic->vdev)) {
>       case DCEM_PORTSPEED_10G:
> @@ -125,8 +124,7 @@ void fnic_handle_link(struct work_struct *work)
>                                       "Link Status:UP_DOWN_UP",
>                                       strlen("Link_Status:UP_DOWN_UP")
>                                       );
> -                             FNIC_FCS_DBG(KERN_DEBUG, fnic->lport->host,
> -                                          "link down\n");
> +                             fnic_dbg(fnic, FCS, "link down\n");
>                               fcoe_ctlr_link_down(&fnic->ctlr);
>                               if (fnic->config.flags & VFCF_FIP_CAPABLE) {
>                                       /* start FCoE VLAN discovery */
> @@ -140,8 +138,7 @@ void fnic_handle_link(struct work_struct *work)
>                                       fnic_fcoe_send_vlan_req(fnic);
>                                       return;
>                               }
> -                             FNIC_FCS_DBG(KERN_DEBUG, fnic->lport->host,
> -                                          "link up\n");
> +                             fnic_dbg(fnic, FCS, "link up\n");
>                               fcoe_ctlr_link_up(&fnic->ctlr);
>                       } else {
>                               /* UP -> UP */
> @@ -164,7 +161,7 @@ void fnic_handle_link(struct work_struct *work)
>                       fnic_fcoe_send_vlan_req(fnic);
>                       return;
>               }
> -             FNIC_FCS_DBG(KERN_DEBUG, fnic->lport->host, "link up\n");
> +             fnic_dbg(fnic, FCS, "link up\n");
>               fnic_fc_trace_set_data(fnic->lport->host->host_no, FNIC_FC_LE,
>                       "Link Status: DOWN_UP", strlen("Link Status: DOWN_UP"));
>               fcoe_ctlr_link_up(&fnic->ctlr);
> @@ -172,14 +169,14 @@ void fnic_handle_link(struct work_struct *work)
>               /* UP -> DOWN */
>               fnic->lport->host_stats.link_failure_count++;
>               spin_unlock_irqrestore(&fnic->fnic_lock, flags);
> -             FNIC_FCS_DBG(KERN_DEBUG, fnic->lport->host, "link down\n");
> +             fnic_dbg(fnic, FCS, "link down\n");
>               fnic_fc_trace_set_data(
>                       fnic->lport->host->host_no, FNIC_FC_LE,
>                       "Link Status: UP_DOWN",
>                       strlen("Link Status: UP_DOWN"));
>               if (fnic->config.flags & VFCF_FIP_CAPABLE) {
> -                     FNIC_FCS_DBG(KERN_DEBUG, fnic->lport->host,
> -                             "deleting fip-timer during link-down\n");
> +                     fnic_dbg(fnic, FCS,
> +                              "deleting fip-timer during link-down\n");
>                       del_timer_sync(&fnic->fip_timer);
>               }
>               fcoe_ctlr_link_down(&fnic->ctlr);
> @@ -281,13 +278,12 @@ void fnic_handle_event(struct work_struct *work)
>                       spin_lock_irqsave(&fnic->fnic_lock, flags);
>                       break;
>               case FNIC_EVT_START_FCF_DISC:
> -                     FNIC_FCS_DBG(KERN_DEBUG, fnic->lport->host,
> -                               "Start FCF Discovery\n");
> +                     fnic_dbg(fnic, FCS, "Start FCF Discovery\n");
>                       fnic_fcoe_start_fcf_disc(fnic);
>                       break;
>               default:
> -                     FNIC_FCS_DBG(KERN_DEBUG, fnic->lport->host,
> -                               "Unknown event 0x%x\n", fevt->event);
> +                     fnic_dbg(fnic, FCS, "Unknown event 0x%x\n",
> +                              fevt->event);
>                       break;
>               }
>               kfree(fevt);
> @@ -380,9 +376,7 @@ static void fnic_fcoe_send_vlan_req(struct fnic *fnic)
>       fnic_fcoe_reset_vlans(fnic);
>       fnic->set_vlan(fnic, 0);
>  
> -     if (printk_ratelimit())
> -             FNIC_FCS_DBG(KERN_INFO, fnic->lport->host,
> -                       "Sending VLAN request...\n");
> +     fnic_dbg_ratelimited(fnic, FCS, "Sending VLAN request...\n");
>  
>       skb = dev_alloc_skb(sizeof(struct fip_vlan));
>       if (!skb)
> @@ -434,14 +428,12 @@ static void fnic_fcoe_process_vlan_resp(struct fnic 
> *fnic, struct sk_buff *skb)
>       u64 sol_time;
>       unsigned long flags;
>  
> -     FNIC_FCS_DBG(KERN_INFO, fnic->lport->host,
> -               "Received VLAN response...\n");
> +     fnic_dbg(fnic, FCS, "Received VLAN response...\n");
>  
>       fiph = (struct fip_header *) skb->data;
>  
> -     FNIC_FCS_DBG(KERN_INFO, fnic->lport->host,
> -               "Received VLAN response... OP 0x%x SUB_OP 0x%x\n",
> -               ntohs(fiph->fip_op), fiph->fip_subcode);
> +     fnic_dbg(fnic, FCS, "Received VLAN response... OP 0x%x SUB_OP 0x%x\n",
> +              ntohs(fiph->fip_op), fiph->fip_subcode);
>  
>       rlen = ntohs(fiph->fip_dl_len) * 4;
>       fnic_fcoe_reset_vlans(fnic);
> @@ -474,8 +466,7 @@ static void fnic_fcoe_process_vlan_resp(struct fnic 
> *fnic, struct sk_buff *skb)
>       if (list_empty(&fnic->vlans)) {
>               /* retry from timer */
>               atomic64_inc(&fnic_stats->vlan_stats.resp_withno_vlanID);
> -             FNIC_FCS_DBG(KERN_INFO, fnic->lport->host,
> -                       "No VLAN descriptors in FIP VLAN response\n");
> +             fnic_dbg(fnic, FCS, "No VLAN descriptors in FIP VLAN 
> response\n");
>               spin_unlock_irqrestore(&fnic->vlans_lock, flags);
>               goto out;
>       }
> @@ -732,7 +723,7 @@ void fnic_update_mac_locked(struct fnic *fnic, u8 *new)
>               new = ctl;
>       if (ether_addr_equal(data, new))
>               return;
> -     FNIC_FCS_DBG(KERN_DEBUG, fnic->lport->host, "update_mac %pM\n", new);
> +     fnic_dbg(fnic, FCS, "update_mac %pM\n", new);
>       if (!is_zero_ether_addr(data) && !ether_addr_equal(data, ctl))
>               vnic_dev_del_addr(fnic->vdev, data);
>       memcpy(data, new, ETH_ALEN);
> @@ -774,8 +765,7 @@ void fnic_set_port_id(struct fc_lport *lport, u32 
> port_id, struct fc_frame *fp)
>       u8 *mac;
>       int ret;
>  
> -     FNIC_FCS_DBG(KERN_DEBUG, lport->host, "set port_id %x fp %p\n",
> -                  port_id, fp);
> +     fnic_dbg(fnic, FCS, "set port_id %x fp %p\n", port_id, fp);
>  
>       /*
>        * If we're clearing the FC_ID, change to use the ctl_src_addr.
> @@ -801,10 +791,8 @@ void fnic_set_port_id(struct fc_lport *lport, u32 
> port_id, struct fc_frame *fp)
>       if (fnic->state == FNIC_IN_ETH_MODE || fnic->state == FNIC_IN_FC_MODE)
>               fnic->state = FNIC_IN_ETH_TRANS_FC_MODE;
>       else {
> -             FNIC_FCS_DBG(KERN_DEBUG, fnic->lport->host,
> -                          "Unexpected fnic state %s while"
> -                          " processing flogi resp\n",
> -                          fnic_state_to_str(fnic->state));
> +             fnic_dbg(fnic, FCS, "Unexpected fnic state %s while processing 
> flogi resp\n",
> +                      fnic_state_to_str(fnic->state));
>               spin_unlock_irq(&fnic->fnic_lock);
>               return;
>       }
> @@ -881,8 +869,7 @@ static void fnic_rq_cmpl_frame_recv(struct vnic_rq *rq, 
> struct cq_desc
>               skb_trim(skb, bytes_written);
>               if (!fcs_ok) {
>                       atomic64_inc(&fnic_stats->misc_stats.frame_errors);
> -                     FNIC_FCS_DBG(KERN_DEBUG, fnic->lport->host,
> -                                  "fcs error.  dropping packet.\n");
> +                     fnic_dbg(fnic, FCS, "fcs error - dropping packet\n");
>                       goto drop;
>               }
>               if (fnic_import_rq_eth_pkt(fnic, skb))
> @@ -897,12 +884,9 @@ static void fnic_rq_cmpl_frame_recv(struct vnic_rq *rq, 
> struct cq_desc
>  
>       if (!fcs_ok || packet_error || !fcoe_fc_crc_ok || fcoe_enc_error) {
>               atomic64_inc(&fnic_stats->misc_stats.frame_errors);
> -             FNIC_FCS_DBG(KERN_DEBUG, fnic->lport->host,
> -                          "fnic rq_cmpl fcoe x%x fcsok x%x"
> -                          " pkterr x%x fcoe_fc_crc_ok x%x, fcoe_enc_err"
> -                          " x%x\n",
> -                          fcoe, fcs_ok, packet_error,
> -                          fcoe_fc_crc_ok, fcoe_enc_error);
> +             fnic_dbg(fnic, FCS, "fnic rq_cmpl fcoe x%x fcsok x%x pkterr x%x 
> fcoe_fc_crc_ok x%x, fcoe_enc_err x%x\n",
> +                      fcoe, fcs_ok, packet_error,
> +                      fcoe_fc_crc_ok, fcoe_enc_error);
>               goto drop;
>       }
>  
> @@ -978,8 +962,7 @@ int fnic_alloc_rq_frame(struct vnic_rq *rq)
>       len = FC_FRAME_HEADROOM + FC_MAX_FRAME + FC_FRAME_TAILROOM;
>       skb = dev_alloc_skb(len);
>       if (!skb) {
> -             FNIC_FCS_DBG(KERN_DEBUG, fnic->lport->host,
> -                          "Unable to allocate RQ sk_buff\n");
> +             fnic_dbg(fnic, FCS, "Unable to allocate RQ sk_buff\n");
>               return -ENOMEM;
>       }
>       skb_reset_mac_header(skb);
> @@ -1343,29 +1326,23 @@ void fnic_handle_fip_timer(struct fnic *fnic)
>       if (list_empty(&fnic->vlans)) {
>               spin_unlock_irqrestore(&fnic->vlans_lock, flags);
>               /* no vlans available, try again */
> -             if (printk_ratelimit())
> -                     FNIC_FCS_DBG(KERN_DEBUG, fnic->lport->host,
> -                               "Start VLAN Discovery\n");
> +             fnic_dbg_ratelimited(fnic, FCS, "Start VLAN Discovery\n");
>               fnic_event_enq(fnic, FNIC_EVT_START_VLAN_DISC);
>               return;
>       }
>  
>       vlan = list_first_entry(&fnic->vlans, struct fcoe_vlan, list);
> -     FNIC_FCS_DBG(KERN_DEBUG, fnic->lport->host,
> -               "fip_timer: vlan %d state %d sol_count %d\n",
> -               vlan->vid, vlan->state, vlan->sol_count);
> +     fnic_dbg(fnic, FCS, "fip_timer: vlan %d state %d sol_count %d\n",
> +              vlan->vid, vlan->state, vlan->sol_count);
>       switch (vlan->state) {
>       case FIP_VLAN_USED:
> -             FNIC_FCS_DBG(KERN_DEBUG, fnic->lport->host,
> -                       "FIP VLAN is selected for FC transaction\n");
> +             fnic_dbg(fnic, FCS, "FIP VLAN is selected for FC 
> transaction\n");
>               spin_unlock_irqrestore(&fnic->vlans_lock, flags);
>               break;
>       case FIP_VLAN_FAILED:
>               spin_unlock_irqrestore(&fnic->vlans_lock, flags);
>               /* if all vlans are in failed state, restart vlan disc */
> -             if (printk_ratelimit())
> -                     FNIC_FCS_DBG(KERN_DEBUG, fnic->lport->host,
> -                               "Start VLAN Discovery\n");
> +             fnic_dbg_ratelimited(fnic, FCS, "Start VLAN Discovery\n");
>               fnic_event_enq(fnic, FNIC_EVT_START_VLAN_DISC);
>               break;
>       case FIP_VLAN_SENT:
> @@ -1374,9 +1351,8 @@ void fnic_handle_fip_timer(struct fnic *fnic)
>                        * no response on this vlan, remove  from the list.
>                        * Try the next vlan
>                        */
> -                     FNIC_FCS_DBG(KERN_INFO, fnic->lport->host,
> -                               "Dequeue this VLAN ID %d from list\n",
> -                               vlan->vid);
> +                     fnic_dbg(fnic, FCS, "Dequeue this VLAN ID %d from 
> list\n",
> +                              vlan->vid);
>                       list_del(&vlan->list);
>                       kfree(vlan);
>                       vlan = NULL;
> @@ -1384,9 +1360,7 @@ void fnic_handle_fip_timer(struct fnic *fnic)
>                               /* we exhausted all vlans, restart vlan disc */
>                               spin_unlock_irqrestore(&fnic->vlans_lock,
>                                                       flags);
> -                             FNIC_FCS_DBG(KERN_INFO, fnic->lport->host,
> -                                       "fip_timer: vlan list empty, "
> -                                       "trigger vlan disc\n");
> +                             fnic_dbg(fnic, FCS, "fip_timer: vlan list 
> empty, trigger vlan disc\n");
>                               fnic_event_enq(fnic, FNIC_EVT_START_VLAN_DISC);
>                               return;
>                       }
> diff --git a/drivers/scsi/fnic/fnic_isr.c b/drivers/scsi/fnic/fnic_isr.c
> index 2fb2731f50fb..dbd86ddd3418 100644
> --- a/drivers/scsi/fnic/fnic_isr.c
> +++ b/drivers/scsi/fnic/fnic_isr.c
> @@ -263,8 +263,7 @@ int fnic_set_intr_mode(struct fnic *fnic)
>                       fnic->intr_count = vecs;
>                       fnic->err_intr_offset = FNIC_MSIX_ERR_NOTIFY;
>  
> -                     FNIC_ISR_DBG(KERN_DEBUG, fnic->lport->host,
> -                                  "Using MSI-X Interrupts\n");
> +                     fnic_dbg(fnic, ISR, "Using MSI-X Interrupts\n");
>                       vnic_dev_set_intr_mode(fnic->vdev,
>                                              VNIC_DEV_INTR_MODE_MSIX);
>                       return 0;
> @@ -289,8 +288,7 @@ int fnic_set_intr_mode(struct fnic *fnic)
>               fnic->intr_count = 1;
>               fnic->err_intr_offset = 0;
>  
> -             FNIC_ISR_DBG(KERN_DEBUG, fnic->lport->host,
> -                          "Using MSI Interrupts\n");
> +             fnic_dbg(fnic, ISR, "Using MSI Interrupts\n");
>               vnic_dev_set_intr_mode(fnic->vdev, VNIC_DEV_INTR_MODE_MSI);
>  
>               return 0;
> @@ -315,8 +313,7 @@ int fnic_set_intr_mode(struct fnic *fnic)
>               fnic->cq_count = 3;
>               fnic->intr_count = 3;
>  
> -             FNIC_ISR_DBG(KERN_DEBUG, fnic->lport->host,
> -                          "Using Legacy Interrupts\n");
> +             fnic_dbg(fnic, ISR, "Using Legacy Interrupts\n");
>               vnic_dev_set_intr_mode(fnic->vdev, VNIC_DEV_INTR_MODE_INTX);
>  
>               return 0;
> diff --git a/drivers/scsi/fnic/fnic_main.c b/drivers/scsi/fnic/fnic_main.c
> index 186c3ab4456b..dd6bb5643ebb 100644
> --- a/drivers/scsi/fnic/fnic_main.c
> +++ b/drivers/scsi/fnic/fnic_main.c
> @@ -220,9 +220,7 @@ static struct fc_host_statistics *fnic_get_stats(struct 
> Scsi_Host *host)
>       spin_unlock_irqrestore(&fnic->fnic_lock, flags);
>  
>       if (ret) {
> -             FNIC_MAIN_DBG(KERN_DEBUG, fnic->lport->host,
> -                           "fnic: Get vnic stats failed"
> -                           " 0x%x", ret);
> +             fnic_dbg(fnic, MAIN, "fnic: Get vnic stats failed 0x%x\n", ret);
>               return stats;
>       }
>       vs = fnic->stats;
> @@ -332,9 +330,8 @@ static void fnic_reset_host_stats(struct Scsi_Host *host)
>       spin_unlock_irqrestore(&fnic->fnic_lock, flags);
>  
>       if (ret) {
> -             FNIC_MAIN_DBG(KERN_DEBUG, fnic->lport->host,
> -                             "fnic: Reset vnic stats failed"
> -                             " 0x%x", ret);
> +             fnic_dbg(fnic, MAIN, "fnic: Reset vnic stats failed 0x%x\n",
> +                      ret);
>               return;
>       }
>       fnic->stats_reset_time = jiffies;
> diff --git a/drivers/scsi/fnic/fnic_scsi.c b/drivers/scsi/fnic/fnic_scsi.c
> index e619a82f921b..3809e57792aa 100644
> --- a/drivers/scsi/fnic/fnic_scsi.c
> +++ b/drivers/scsi/fnic/fnic_scsi.c
> @@ -240,12 +240,10 @@ int fnic_fw_reset_handler(struct fnic *fnic)
>  
>       if (!ret) {
>               atomic64_inc(&fnic->fnic_stats.reset_stats.fw_resets);
> -             FNIC_SCSI_DBG(KERN_DEBUG, fnic->lport->host,
> -                           "Issued fw reset\n");
> +             fnic_dbg(fnic, SCSI, "Issued fw reset\n");
>       } else {
>               fnic_clear_state_flags(fnic, FNIC_FLAGS_FWRESET);
> -             FNIC_SCSI_DBG(KERN_DEBUG, fnic->lport->host,
> -                           "Failed to issue fw reset\n");
> +             fnic_dbg(fnic, SCSI, "Failed to issue fw reset\n");
>       }
>  
>       return ret;
> @@ -288,15 +286,13 @@ int fnic_flogi_reg_handler(struct fnic *fnic, u32 fc_id)
>                                               fc_id, gw_mac,
>                                               fnic->data_src_addr,
>                                               lp->r_a_tov, lp->e_d_tov);
> -             FNIC_SCSI_DBG(KERN_DEBUG, fnic->lport->host,
> -                           "FLOGI FIP reg issued fcid %x src %pM dest %pM\n",
> -                           fc_id, fnic->data_src_addr, gw_mac);
> +             fnic_dbg(fnic, SCSI, "FLOGI FIP reg issued fcid %x src %pM dest 
> %pM\n",
> +                      fc_id, fnic->data_src_addr, gw_mac);
>       } else {
>               fnic_queue_wq_copy_desc_flogi_reg(wq, SCSI_NO_TAG,
>                                                 format, fc_id, gw_mac);
> -             FNIC_SCSI_DBG(KERN_DEBUG, fnic->lport->host,
> -                           "FLOGI reg issued fcid %x map %d dest %pM\n",
> -                           fc_id, fnic->ctlr.map_dest, gw_mac);
> +             fnic_dbg(fnic, SCSI, "FLOGI reg issued fcid %x map %d dest 
> %pM\n",
> +                      fc_id, fnic->ctlr.map_dest, gw_mac);
>       }
>  
>       atomic64_inc(&fnic->fnic_stats.fw_stats.active_fw_reqs);
> @@ -373,8 +369,8 @@ static inline int fnic_queue_wq_copy_desc(struct fnic 
> *fnic,
>  
>       if (unlikely(!vnic_wq_copy_desc_avail(wq))) {
>               spin_unlock_irqrestore(&fnic->wq_copy_lock[0], intr_flags);
> -             FNIC_SCSI_DBG(KERN_INFO, fnic->lport->host,
> -                       "fnic_queue_wq_copy_desc failure - no descriptors\n");
> +             fnic_dbg(fnic, SCSI, "%s: failure - no descriptors\n",
> +                      __func__);
>               atomic64_inc(&misc_stats->io_cpwq_alloc_failures);
>               return SCSI_MLQUEUE_HOST_BUSY;
>       }
> @@ -445,8 +441,7 @@ static int fnic_queuecommand_lck(struct scsi_cmnd *sc, 
> void (*done)(struct scsi_
>  
>       rport = starget_to_rport(scsi_target(sc->device));
>       if (!rport) {
> -             FNIC_SCSI_DBG(KERN_DEBUG, fnic->lport->host,
> -                             "returning DID_NO_CONNECT for IO as rport is 
> NULL\n");
> +             fnic_dbg(fnic, SCSI, "returning DID_NO_CONNECT for IO as rport 
> is NULL\n");
>               sc->result = DID_NO_CONNECT << 16;
>               done(sc);
>               return 0;
> @@ -454,8 +449,7 @@ static int fnic_queuecommand_lck(struct scsi_cmnd *sc, 
> void (*done)(struct scsi_
>  
>       ret = fc_remote_port_chkready(rport);
>       if (ret) {
> -             FNIC_SCSI_DBG(KERN_DEBUG, fnic->lport->host,
> -                             "rport is not ready\n");
> +             fnic_dbg(fnic, SCSI, "rport is not ready\n");
>               atomic64_inc(&fnic_stats->misc_stats.rport_not_ready);
>               sc->result = ret;
>               done(sc);
> @@ -464,9 +458,8 @@ static int fnic_queuecommand_lck(struct scsi_cmnd *sc, 
> void (*done)(struct scsi_
>  
>       rp = rport->dd_data;
>       if (!rp || rp->rp_state == RPORT_ST_DELETE) {
> -             FNIC_SCSI_DBG(KERN_DEBUG, fnic->lport->host,
> -                     "rport 0x%x removed, returning DID_NO_CONNECT\n",
> -                     rport->port_id);
> +             fnic_dbg(fnic, SCSI, "rport 0x%x removed, returning 
> DID_NO_CONNECT\n",
> +                      rport->port_id);
>  
>               atomic64_inc(&fnic_stats->misc_stats.rport_not_ready);
>               sc->result = DID_NO_CONNECT<<16;
> @@ -475,9 +468,8 @@ static int fnic_queuecommand_lck(struct scsi_cmnd *sc, 
> void (*done)(struct scsi_
>       }
>  
>       if (rp->rp_state != RPORT_ST_READY) {
> -             FNIC_SCSI_DBG(KERN_DEBUG, fnic->lport->host,
> -                     "rport 0x%x in state 0x%x, returning DID_IMM_RETRY\n",
> -                     rport->port_id, rp->rp_state);
> +             fnic_dbg(fnic, SCSI, "rport 0x%x in state 0x%x, returning 
> DID_IMM_RETRY\n",
> +                      rport->port_id, rp->rp_state);
>  
>               sc->result = DID_IMM_RETRY << 16;
>               done(sc);
> @@ -650,15 +642,12 @@ static int fnic_fcpio_fw_reset_cmpl_handler(struct fnic 
> *fnic,
>       if (fnic->state == FNIC_IN_FC_TRANS_ETH_MODE) {
>               /* Check status of reset completion */
>               if (!hdr_status) {
> -                     FNIC_SCSI_DBG(KERN_DEBUG, fnic->lport->host,
> -                                   "reset cmpl success\n");
> +                     fnic_dbg(fnic, SCSI, "reset cmpl success\n");
>                       /* Ready to send flogi out */
>                       fnic->state = FNIC_IN_ETH_MODE;
>               } else {
> -                     FNIC_SCSI_DBG(KERN_DEBUG,
> -                                   fnic->lport->host,
> -                                   "fnic fw_reset : failed %s\n",
> -                                   fnic_fcpio_status_to_str(hdr_status));
> +                     fnic_dbg(fnic, SCSI, "fnic fw_reset : failed %s\n",
> +                              fnic_fcpio_status_to_str(hdr_status));
>  
>                       /*
>                        * Unable to change to eth mode, cannot send out flogi
> @@ -671,10 +660,8 @@ static int fnic_fcpio_fw_reset_cmpl_handler(struct fnic 
> *fnic,
>                       ret = -1;
>               }
>       } else {
> -             FNIC_SCSI_DBG(KERN_DEBUG,
> -                           fnic->lport->host,
> -                           "Unexpected state %s while processing"
> -                           " reset cmpl\n", fnic_state_to_str(fnic->state));
> +             fnic_dbg(fnic, SCSI, "Unexpected state %s while processing 
> reset cmpl\n",
> +                      fnic_state_to_str(fnic->state));
>               atomic64_inc(&reset_stats->fw_reset_failures);
>               ret = -1;
>       }
> @@ -725,22 +712,17 @@ static int fnic_fcpio_flogi_reg_cmpl_handler(struct 
> fnic *fnic,
>  
>               /* Check flogi registration completion status */
>               if (!hdr_status) {
> -                     FNIC_SCSI_DBG(KERN_DEBUG, fnic->lport->host,
> -                                   "flog reg succeeded\n");
> +                     fnic_dbg(fnic, SCSI, "flog reg succeeded\n");
>                       fnic->state = FNIC_IN_FC_MODE;
>               } else {
> -                     FNIC_SCSI_DBG(KERN_DEBUG,
> -                                   fnic->lport->host,
> -                                   "fnic flogi reg :failed %s\n",
> -                                   fnic_fcpio_status_to_str(hdr_status));
> +                     fnic_dbg(fnic, SCSI, "fnic flogi reg :failed %s\n",
> +                              fnic_fcpio_status_to_str(hdr_status));
>                       fnic->state = FNIC_IN_ETH_MODE;
>                       ret = -1;
>               }
>       } else {
> -             FNIC_SCSI_DBG(KERN_DEBUG, fnic->lport->host,
> -                           "Unexpected fnic state %s while"
> -                           " processing flogi reg completion\n",
> -                           fnic_state_to_str(fnic->state));
> +             fnic_dbg(fnic, SCSI, "Unexpected fnic state %s while processing 
> flogi reg completion\n",
> +                      fnic_state_to_str(fnic->state));
>               ret = -1;
>       }
>  
> @@ -901,14 +883,11 @@ static void fnic_fcpio_icmnd_cmpl_handler(struct fnic 
> *fnic,
>               if(FCPIO_ABORTED == hdr_status)
>                       CMD_FLAGS(sc) |= FNIC_IO_ABORTED;
>  
> -             FNIC_SCSI_DBG(KERN_INFO, fnic->lport->host,
> -                     "icmnd_cmpl abts pending "
> -                       "hdr status = %s tag = 0x%x sc = 0x%p "
> -                       "scsi_status = %x residual = %d\n",
> -                       fnic_fcpio_status_to_str(hdr_status),
> -                       id, sc,
> -                       icmnd_cmpl->scsi_status,
> -                       icmnd_cmpl->residual);
> +             fnic_dbg(fnic, SCSI, "icmnd_cmpl abts pending hdr status = %s 
> tag = 0x%x sc = 0x%p scsi_status = %x residual = %d\n",
> +                      fnic_fcpio_status_to_str(hdr_status),
> +                      id, sc,
> +                      icmnd_cmpl->scsi_status,
> +                      icmnd_cmpl->residual);
>               return;
>       }
>  
> @@ -1114,9 +1093,8 @@ static void fnic_fcpio_itmf_cmpl_handler(struct fnic 
> *fnic,
>       if ((id & FNIC_TAG_ABORT) && (id & FNIC_TAG_DEV_RST)) {
>               /* Abort and terminate completion of device reset req */
>               /* REVISIT : Add asserts about various flags */
> -             FNIC_SCSI_DBG(KERN_DEBUG, fnic->lport->host,
> -                           "dev reset abts cmpl recd. id %x status %s\n",
> -                           id, fnic_fcpio_status_to_str(hdr_status));
> +             fnic_dbg(fnic, SCSI, "dev reset abts cmpl recd. id %x status 
> %s\n",
> +                      id, fnic_fcpio_status_to_str(hdr_status));
>               CMD_STATE(sc) = FNIC_IOREQ_ABTS_COMPLETE;
>               CMD_ABTS_STATUS(sc) = hdr_status;
>               CMD_FLAGS(sc) |= FNIC_DEV_RST_DONE;
> @@ -1136,9 +1114,8 @@ static void fnic_fcpio_itmf_cmpl_handler(struct fnic 
> *fnic,
>                                       &term_stats->terminate_fw_timeouts);
>                       break;
>               case FCPIO_ITMF_REJECTED:
> -                     FNIC_SCSI_DBG(KERN_INFO, fnic->lport->host,
> -                             "abort reject recd. id %d\n",
> -                             (int)(id & FNIC_TAG_MASK));
> +                     fnic_dbg(fnic, SCSI, "abort reject recd. id %d\n",
> +                              (int)(id & FNIC_TAG_MASK));
>                       break;
>               case FCPIO_IO_NOT_FOUND:
>                       if (CMD_FLAGS(sc) & FNIC_IO_ABTS_ISSUED)
> @@ -1171,10 +1148,9 @@ static void fnic_fcpio_itmf_cmpl_handler(struct fnic 
> *fnic,
>               if (!(CMD_FLAGS(sc) & (FNIC_IO_ABORTED | FNIC_IO_DONE)))
>                       atomic64_inc(&misc_stats->no_icmnd_itmf_cmpls);
>  
> -             FNIC_SCSI_DBG(KERN_DEBUG, fnic->lport->host,
> -                           "abts cmpl recd. id %d status %s\n",
> -                           (int)(id & FNIC_TAG_MASK),
> -                           fnic_fcpio_status_to_str(hdr_status));
> +             fnic_dbg(fnic, SCSI, "abts cmpl recd. id %d status %s\n",
> +                      (int)(id & FNIC_TAG_MASK),
> +                      fnic_fcpio_status_to_str(hdr_status));
>  
>               /*
>                * If scsi_eh thread is blocked waiting for abts to complete,
> @@ -1185,8 +1161,7 @@ static void fnic_fcpio_itmf_cmpl_handler(struct fnic 
> *fnic,
>                       complete(io_req->abts_done);
>                       spin_unlock_irqrestore(io_lock, flags);
>               } else {
> -                     FNIC_SCSI_DBG(KERN_DEBUG, fnic->lport->host,
> -                                   "abts cmpl, completing IO\n");
> +                     fnic_dbg(fnic, SCSI, "abts cmpl, completing IO\n");
>                       CMD_SP(sc) = NULL;
>                       sc->result = (DID_ERROR << 16);
>  
> @@ -1227,11 +1202,9 @@ static void fnic_fcpio_itmf_cmpl_handler(struct fnic 
> *fnic,
>                                 jiffies_to_msecs(jiffies - start_time),
>                                 desc, 0,
>                                 (((u64)CMD_FLAGS(sc) << 32) | CMD_STATE(sc)));
> -                     FNIC_SCSI_DBG(KERN_DEBUG, fnic->lport->host,
> -                             "Terminate pending "
> -                             "dev reset cmpl recd. id %d status %s\n",
> -                             (int)(id & FNIC_TAG_MASK),
> -                             fnic_fcpio_status_to_str(hdr_status));
> +                     fnic_dbg(fnic, SCSI, "Terminate pending dev reset cmpl 
> recd. id %d status %s\n",
> +                              (int)(id & FNIC_TAG_MASK),
> +                              fnic_fcpio_status_to_str(hdr_status));
>                       return;
>               }
>               if (CMD_FLAGS(sc) & FNIC_DEV_RST_TIMED_OUT) {
> @@ -1242,19 +1215,16 @@ static void fnic_fcpio_itmf_cmpl_handler(struct fnic 
> *fnic,
>                                 jiffies_to_msecs(jiffies - start_time),
>                                 desc, 0,
>                                 (((u64)CMD_FLAGS(sc) << 32) | CMD_STATE(sc)));
> -                     FNIC_SCSI_DBG(KERN_DEBUG, fnic->lport->host,
> -                             "dev reset cmpl recd after time out. "
> -                             "id %d status %s\n",
> -                             (int)(id & FNIC_TAG_MASK),
> -                             fnic_fcpio_status_to_str(hdr_status));
> +                     fnic_dbg(fnic, SCSI, "dev reset cmpl recd after time 
> out. id %d status %s\n",
> +                              (int)(id & FNIC_TAG_MASK),
> +                              fnic_fcpio_status_to_str(hdr_status));
>                       return;
>               }
>               CMD_STATE(sc) = FNIC_IOREQ_CMD_COMPLETE;
>               CMD_FLAGS(sc) |= FNIC_DEV_RST_DONE;
> -             FNIC_SCSI_DBG(KERN_DEBUG, fnic->lport->host,
> -                           "dev reset cmpl recd. id %d status %s\n",
> -                           (int)(id & FNIC_TAG_MASK),
> -                           fnic_fcpio_status_to_str(hdr_status));
> +             fnic_dbg(fnic, SCSI, "dev reset cmpl recd. id %d status %s\n",
> +                      (int)(id & FNIC_TAG_MASK),
> +                      fnic_fcpio_status_to_str(hdr_status));
>               if (io_req->dr_done)
>                       complete(io_req->dr_done);
>               spin_unlock_irqrestore(io_lock, flags);
> @@ -1313,9 +1283,8 @@ static int fnic_fcpio_cmpl_handler(struct vnic_dev 
> *vdev,
>               break;
>  
>       default:
> -             FNIC_SCSI_DBG(KERN_DEBUG, fnic->lport->host,
> -                           "firmware completion type %d\n",
> -                           desc->hdr.type);
> +             fnic_dbg(fnic, SCSI, "firmware completion type %d\n",
> +                      desc->hdr.type);
>               break;
>       }
>  
> @@ -1419,10 +1388,9 @@ static void fnic_cleanup_io(struct fnic *fnic, int 
> exclude_id)
>               mempool_free(io_req, fnic->io_req_pool);
>  
>               sc->result = DID_TRANSPORT_DISRUPTED << 16;
> -             FNIC_SCSI_DBG(KERN_DEBUG, fnic->lport->host,
> -                           "%s: tag:0x%x : sc:0x%p duration = %lu 
> DID_TRANSPORT_DISRUPTED\n",
> -                           __func__, sc->request->tag, sc,
> -                           (jiffies - start_time));
> +             fnic_dbg(fnic, SCSI, "%s: tag:0x%x : sc:0x%p duration = %lu 
> DID_TRANSPORT_DISRUPTED\n",
> +                      __func__, sc->request->tag, sc,
> +                      (jiffies - start_time));
>  
>               if (atomic64_read(&fnic->io_cmpl_skip))
>                       atomic64_dec(&fnic->io_cmpl_skip);
> @@ -1495,8 +1463,7 @@ void fnic_wq_copy_cleanup_handler(struct vnic_wq_copy 
> *wq,
>  
>  wq_copy_cleanup_scsi_cmd:
>       sc->result = DID_NO_CONNECT << 16;
> -     FNIC_SCSI_DBG(KERN_DEBUG, fnic->lport->host, "wq_copy_cleanup_handler:"
> -                   " DID_NO_CONNECT\n");
> +     fnic_dbg(fnic, SCSI, "wq_copy_cleanup_handler: DID_NO_CONNECT\n");
>  
>       if (sc->scsi_done) {
>               FNIC_TRACE(fnic_wq_copy_cleanup_handler,
> @@ -1537,8 +1504,7 @@ static inline int fnic_queue_abort_io_req(struct fnic 
> *fnic, int tag,
>       if (!vnic_wq_copy_desc_avail(wq)) {
>               spin_unlock_irqrestore(&fnic->wq_copy_lock[0], flags);
>               atomic_dec(&fnic->in_flight);
> -             FNIC_SCSI_DBG(KERN_DEBUG, fnic->lport->host,
> -                     "fnic_queue_abort_io_req: failure: no descriptors\n");
> +             fnic_dbg(fnic, SCSI, "%s: failure: no descriptors\n", __func__);
>               atomic64_inc(&misc_stats->abts_cpwq_alloc_failures);
>               return 1;
>       }
> @@ -1572,10 +1538,7 @@ static void fnic_rport_exch_reset(struct fnic *fnic, 
> u32 port_id)
>       struct scsi_lun fc_lun;
>       enum fnic_ioreq_state old_ioreq_state;
>  
> -     FNIC_SCSI_DBG(KERN_DEBUG,
> -                   fnic->lport->host,
> -                   "fnic_rport_exch_reset called portid 0x%06x\n",
> -                   port_id);
> +     fnic_dbg(fnic, SCSI, "%s: called portid 0x%06x\n", __func__, port_id);
>  
>       if (fnic->in_remove)
>               return;
> @@ -1599,9 +1562,8 @@ static void fnic_rport_exch_reset(struct fnic *fnic, 
> u32 port_id)
>  
>               if ((CMD_FLAGS(sc) & FNIC_DEVICE_RESET) &&
>                       (!(CMD_FLAGS(sc) & FNIC_DEV_RST_ISSUED))) {
> -                     FNIC_SCSI_DBG(KERN_DEBUG, fnic->lport->host,
> -                     "fnic_rport_exch_reset dev rst not pending sc 0x%p\n",
> -                     sc);
> +                     fnic_dbg(fnic, SCSI, "%s: dev rst not pending sc 
> 0x%p\n",
> +                              __func__, sc);
>                       spin_unlock_irqrestore(io_lock, flags);
>                       continue;
>               }
> @@ -1634,15 +1596,13 @@ static void fnic_rport_exch_reset(struct fnic *fnic, 
> u32 port_id)
>               if (CMD_FLAGS(sc) & FNIC_DEVICE_RESET) {
>                       atomic64_inc(&reset_stats->device_reset_terminates);
>                       abt_tag = (tag | FNIC_TAG_DEV_RST);
> -                     FNIC_SCSI_DBG(KERN_DEBUG, fnic->lport->host,
> -                     "fnic_rport_exch_reset dev rst sc 0x%p\n",
> -                     sc);
> +                     fnic_dbg(fnic, SCSI, "%s: dev rst sc 0x%p\n",
> +                              __func__, sc);
>               }
>  
>               BUG_ON(io_req->abts_done);
>  
> -             FNIC_SCSI_DBG(KERN_DEBUG, fnic->lport->host,
> -                           "fnic_rport_reset_exch: Issuing abts\n");
> +             fnic_dbg(fnic, SCSI, "fnic_rport_reset_exch: Issuing abts\n");
>  
>               spin_unlock_irqrestore(io_lock, flags);
>  
> @@ -1713,11 +1673,9 @@ void fnic_terminate_rport_io(struct fc_rport *rport)
>               return;
>       }
>       fnic = lport_priv(lport);
> -     FNIC_SCSI_DBG(KERN_DEBUG,
> -                   fnic->lport->host, "fnic_terminate_rport_io called"
> -                   " wwpn 0x%llx, wwnn0x%llx, rport 0x%p, portid 0x%06x\n",
> -                   rport->port_name, rport->node_name, rport,
> -                   rport->port_id);
> +     fnic_dbg(fnic, SCSI, "%s: called wwpn 0x%llx, wwnn0x%llx, rport 0x%p, 
> portid 0x%06x\n",
> +              __func__,
> +              rport->port_name, rport->node_name, rport, rport->port_id);
>  
>       if (fnic->in_remove)
>               return;
> @@ -1749,9 +1707,8 @@ void fnic_terminate_rport_io(struct fc_rport *rport)
>  
>               if ((CMD_FLAGS(sc) & FNIC_DEVICE_RESET) &&
>                       (!(CMD_FLAGS(sc) & FNIC_DEV_RST_ISSUED))) {
> -                     FNIC_SCSI_DBG(KERN_DEBUG, fnic->lport->host,
> -                     "fnic_terminate_rport_io dev rst not pending sc 0x%p\n",
> -                     sc);
> +                     fnic_dbg(fnic, SCSI, "%s: dev rst not pending sc 
> 0x%p\n",
> +                              __func__, sc);
>                       spin_unlock_irqrestore(io_lock, flags);
>                       continue;
>               }
> @@ -1770,11 +1727,9 @@ void fnic_terminate_rport_io(struct fc_rport *rport)
>                       fnic_ioreq_state_to_str(CMD_STATE(sc)));
>               }
>               if (!(CMD_FLAGS(sc) & FNIC_IO_ISSUED)) {
> -                     FNIC_SCSI_DBG(KERN_INFO, fnic->lport->host,
> -                               "fnic_terminate_rport_io "
> -                               "IO not yet issued %p tag 0x%x flags "
> -                               "%x state %d\n",
> -                               sc, tag, CMD_FLAGS(sc), CMD_STATE(sc));
> +                     fnic_dbg(fnic, SCSI, "%s: IO not yet issued %p tag 0x%x 
> flags %x state %d\n",
> +                              __func__,
> +                              sc, tag, CMD_FLAGS(sc), CMD_STATE(sc));
>               }
>               old_ioreq_state = CMD_STATE(sc);
>               CMD_STATE(sc) = FNIC_IOREQ_ABTS_PENDING;
> @@ -1782,15 +1737,13 @@ void fnic_terminate_rport_io(struct fc_rport *rport)
>               if (CMD_FLAGS(sc) & FNIC_DEVICE_RESET) {
>                       atomic64_inc(&reset_stats->device_reset_terminates);
>                       abt_tag = (tag | FNIC_TAG_DEV_RST);
> -                     FNIC_SCSI_DBG(KERN_DEBUG, fnic->lport->host,
> -                     "fnic_terminate_rport_io dev rst sc 0x%p\n", sc);
> +                     fnic_dbg(fnic, SCSI, "%s: dev rst sc 0x%p\n",
> +                              __func__, sc);
>               }
>  
>               BUG_ON(io_req->abts_done);
>  
> -             FNIC_SCSI_DBG(KERN_DEBUG,
> -                           fnic->lport->host,
> -                           "fnic_terminate_rport_io: Issuing abts\n");
> +             fnic_dbg(fnic, SCSI, "%s: Issuing abts\n", __func__);
>  
>               spin_unlock_irqrestore(io_lock, flags);
>  
> @@ -1864,10 +1817,8 @@ int fnic_abort_cmd(struct scsi_cmnd *sc)
>  
>       rport = starget_to_rport(scsi_target(sc->device));
>       tag = sc->request->tag;
> -     FNIC_SCSI_DBG(KERN_DEBUG,
> -             fnic->lport->host,
> -             "Abort Cmd called FCID 0x%x, LUN 0x%llx TAG %x flags %x\n",
> -             rport->port_id, sc->device->lun, tag, CMD_FLAGS(sc));
> +     fnic_dbg(fnic, SCSI, "Abort Cmd called FCID 0x%x, LUN 0x%llx TAG %x 
> flags %x\n",
> +              rport->port_id, sc->device->lun, tag, CMD_FLAGS(sc));
>  
>       CMD_FLAGS(sc) = FNIC_NO_FLAGS;
>  
> @@ -1919,8 +1870,8 @@ int fnic_abort_cmd(struct scsi_cmnd *sc)
>       else
>               atomic64_inc(&abts_stats->abort_issued_greater_than_60_sec);
>  
> -     FNIC_SCSI_DBG(KERN_INFO, fnic->lport->host,
> -             "CBD Opcode: %02x Abort issued time: %lu msec\n", sc->cmnd[0], 
> abt_issued_time);
> +     fnic_dbg(fnic, SCSI, "CBD Opcode: %02x Abort issued time: %lu msec\n",
> +              sc->cmnd[0], abt_issued_time);
>       /*
>        * Command is still pending, need to abort it
>        * If the firmware completes the command after this point,
> @@ -2009,8 +1960,7 @@ int fnic_abort_cmd(struct scsi_cmnd *sc)
>  
>       if (!(CMD_FLAGS(sc) & (FNIC_IO_ABORTED | FNIC_IO_DONE))) {
>               spin_unlock_irqrestore(io_lock, flags);
> -             FNIC_SCSI_DBG(KERN_DEBUG, fnic->lport->host,
> -                     "Issuing Host reset due to out of order IO\n");
> +             fnic_dbg(fnic, SCSI, "Issuing Host reset due to out of order 
> IO\n");
>  
>               ret = FAILED;
>               goto fnic_abort_cmd_end;
> @@ -2057,10 +2007,8 @@ int fnic_abort_cmd(struct scsi_cmnd *sc)
>                 (u64)sc->cmnd[4] << 8 | sc->cmnd[5]),
>                 (((u64)CMD_FLAGS(sc) << 32) | CMD_STATE(sc)));
>  
> -     FNIC_SCSI_DBG(KERN_DEBUG, fnic->lport->host,
> -                   "Returning from abort cmd type %x %s\n", task_req,
> -                   (ret == SUCCESS) ?
> -                   "SUCCESS" : "FAILED");
> +     fnic_dbg(fnic, SCSI, "Returning from abort cmd type %x %s\n",
> +              task_req, (ret == SUCCESS) ? "SUCCESS" : "FAILED");
>       return ret;
>  }
>  
> @@ -2090,8 +2038,7 @@ static inline int fnic_queue_dr_io_req(struct fnic 
> *fnic,
>               free_wq_copy_descs(fnic, wq);
>  
>       if (!vnic_wq_copy_desc_avail(wq)) {
> -             FNIC_SCSI_DBG(KERN_DEBUG, fnic->lport->host,
> -                       "queue_dr_io_req failure - no descriptors\n");
> +             fnic_dbg(fnic, SCSI, "queue_dr_io_req failure - no 
> descriptors\n");
>               atomic64_inc(&misc_stats->devrst_cpwq_alloc_failures);
>               ret = -EAGAIN;
>               goto lr_io_req_end;
> @@ -2164,9 +2111,8 @@ static int fnic_clean_pending_aborts(struct fnic *fnic,
>                * Found IO that is still pending with firmware and
>                * belongs to the LUN that we are resetting
>                */
> -             FNIC_SCSI_DBG(KERN_DEBUG, fnic->lport->host,
> -                           "Found IO in %s on lun\n",
> -                           fnic_ioreq_state_to_str(CMD_STATE(sc)));
> +             fnic_dbg(fnic, SCSI, "Found IO in %s on lun\n",
> +                      fnic_ioreq_state_to_str(CMD_STATE(sc)));
>  
>               if (CMD_STATE(sc) == FNIC_IOREQ_ABTS_PENDING) {
>                       spin_unlock_irqrestore(io_lock, flags);
> @@ -2174,9 +2120,8 @@ static int fnic_clean_pending_aborts(struct fnic *fnic,
>               }
>               if ((CMD_FLAGS(sc) & FNIC_DEVICE_RESET) &&
>                       (!(CMD_FLAGS(sc) & FNIC_DEV_RST_ISSUED))) {
> -                     FNIC_SCSI_DBG(KERN_INFO, fnic->lport->host,
> -                             "%s dev rst not pending sc 0x%p\n", __func__,
> -                             sc);
> +                     fnic_dbg(fnic, SCSI, "%s: dev rst not pending sc 
> 0x%p\n",
> +                              __func__, sc);
>                       spin_unlock_irqrestore(io_lock, flags);
>                       continue;
>               }
> @@ -2200,8 +2145,8 @@ static int fnic_clean_pending_aborts(struct fnic *fnic,
>               abt_tag = tag;
>               if (CMD_FLAGS(sc) & FNIC_DEVICE_RESET) {
>                       abt_tag |= FNIC_TAG_DEV_RST;
> -                     FNIC_SCSI_DBG(KERN_INFO, fnic->lport->host,
> -                               "%s: dev rst sc 0x%p\n", __func__, sc);
> +                     fnic_dbg(fnic, SCSI, "%s: dev rst sc 0x%p\n",
> +                              __func__, sc);
>               }
>  
>               CMD_ABTS_STATUS(sc) = FCPIO_INVALID_CODE;
> @@ -2356,9 +2301,8 @@ int fnic_device_reset(struct scsi_cmnd *sc)
>       atomic64_inc(&reset_stats->device_resets);
>  
>       rport = starget_to_rport(scsi_target(sc->device));
> -     FNIC_SCSI_DBG(KERN_DEBUG, fnic->lport->host,
> -                   "Device reset called FCID 0x%x, LUN 0x%llx sc 0x%p\n",
> -                   rport->port_id, sc->device->lun, sc);
> +     fnic_dbg(fnic, SCSI, "Device reset called FCID 0x%x, LUN 0x%llx sc 
> 0x%p\n",
> +              rport->port_id, sc->device->lun, sc);
>  
>       if (lp->state != LPORT_ST_READY || !(lp->link_up))
>               goto fnic_device_reset_end;
> @@ -2407,7 +2351,7 @@ int fnic_device_reset(struct scsi_cmnd *sc)
>       CMD_LR_STATUS(sc) = FCPIO_INVALID_CODE;
>       spin_unlock_irqrestore(io_lock, flags);
>  
> -     FNIC_SCSI_DBG(KERN_DEBUG, fnic->lport->host, "TAG %x\n", tag);
> +     fnic_dbg(fnic, SCSI, "TAG %x\n", tag);
>  
>       /*
>        * issue the device reset, if enqueue failed, clean up the ioreq
> @@ -2435,8 +2379,8 @@ int fnic_device_reset(struct scsi_cmnd *sc)
>       io_req = (struct fnic_io_req *)CMD_SP(sc);
>       if (!io_req) {
>               spin_unlock_irqrestore(io_lock, flags);
> -             FNIC_SCSI_DBG(KERN_DEBUG, fnic->lport->host,
> -                             "io_req is null tag 0x%x sc 0x%p\n", tag, sc);
> +             fnic_dbg(fnic, SCSI, "io_req is null tag 0x%x sc 0x%p\n",
> +                      tag, sc);
>               goto fnic_device_reset_end;
>       }
>       io_req->dr_done = NULL;
> @@ -2449,8 +2393,7 @@ int fnic_device_reset(struct scsi_cmnd *sc)
>        */
>       if (status == FCPIO_INVALID_CODE) {
>               atomic64_inc(&reset_stats->device_reset_timeouts);
> -             FNIC_SCSI_DBG(KERN_DEBUG, fnic->lport->host,
> -                           "Device reset timed out\n");
> +             fnic_dbg(fnic, SCSI, "Device reset timed out\n");
>               CMD_FLAGS(sc) |= FNIC_DEV_RST_TIMED_OUT;
>               spin_unlock_irqrestore(io_lock, flags);
>               int_to_scsilun(sc->device->lun, &fc_lun);
> @@ -2477,9 +2420,8 @@ int fnic_device_reset(struct scsi_cmnd *sc)
>                               CMD_STATE(sc) = FNIC_IOREQ_ABTS_PENDING;
>                               io_req->abts_done = &tm_done;
>                               spin_unlock_irqrestore(io_lock, flags);
> -                             FNIC_SCSI_DBG(KERN_DEBUG, fnic->lport->host,
> -                             "Abort and terminate issued on Device reset "
> -                             "tag 0x%x sc 0x%p\n", tag, sc);
> +                             fnic_dbg(fnic, SCSI, "Abort and terminate 
> issued on Device reset tag 0x%x sc 0x%p\n",
> +                                      tag, sc);
>                               break;
>                       }
>               }
> @@ -2503,9 +2445,7 @@ int fnic_device_reset(struct scsi_cmnd *sc)
>       /* Completed, but not successful, clean up the io_req, return fail */
>       if (status != FCPIO_SUCCESS) {
>               spin_lock_irqsave(io_lock, flags);
> -             FNIC_SCSI_DBG(KERN_DEBUG,
> -                           fnic->lport->host,
> -                           "Device reset completed - failed\n");
> +             fnic_dbg(fnic, SCSI, "Device reset completed - failed\n");
>               io_req = (struct fnic_io_req *)CMD_SP(sc);
>               goto fnic_device_reset_clean;
>       }
> @@ -2520,9 +2460,7 @@ int fnic_device_reset(struct scsi_cmnd *sc)
>       if (fnic_clean_pending_aborts(fnic, sc, new_sc)) {
>               spin_lock_irqsave(io_lock, flags);
>               io_req = (struct fnic_io_req *)CMD_SP(sc);
> -             FNIC_SCSI_DBG(KERN_DEBUG, fnic->lport->host,
> -                           "Device reset failed"
> -                           " since could not abort all IOs\n");
> +             fnic_dbg(fnic, SCSI, "Device reset failed since could not abort 
> all IOs\n");
>               goto fnic_device_reset_clean;
>       }
>  
> @@ -2558,10 +2496,8 @@ int fnic_device_reset(struct scsi_cmnd *sc)
>       if (unlikely(tag_gen_flag))
>               fnic_scsi_host_end_tag(fnic, sc);
>  
> -     FNIC_SCSI_DBG(KERN_DEBUG, fnic->lport->host,
> -                   "Returning from device reset %s\n",
> -                   (ret == SUCCESS) ?
> -                   "SUCCESS" : "FAILED");
> +     fnic_dbg(fnic, SCSI, "Returning from device reset %s\n",
> +              (ret == SUCCESS) ? "SUCCESS" : "FAILED");
>  
>       if (ret == FAILED)
>               atomic64_inc(&reset_stats->device_reset_failures);
> @@ -2581,8 +2517,7 @@ int fnic_reset(struct Scsi_Host *shost)
>       fnic = lport_priv(lp);
>       reset_stats = &fnic->fnic_stats.reset_stats;
>  
> -     FNIC_SCSI_DBG(KERN_DEBUG, fnic->lport->host,
> -                   "fnic_reset called\n");
> +     fnic_dbg(fnic, SCSI, "%s: called\n", __func__);
>  
>       atomic64_inc(&reset_stats->fnic_resets);
>  
> @@ -2592,10 +2527,8 @@ int fnic_reset(struct Scsi_Host *shost)
>        */
>       ret = fc_lport_reset(lp);
>  
> -     FNIC_SCSI_DBG(KERN_DEBUG, fnic->lport->host,
> -                   "Returning from fnic reset %s\n",
> -                   (ret == 0) ?
> -                   "SUCCESS" : "FAILED");
> +     fnic_dbg(fnic, SCSI, "Returning from fnic reset %s\n",
> +              (ret == 0) ? "SUCCESS" : "FAILED");
>  
>       if (ret == 0)
>               atomic64_inc(&reset_stats->fnic_reset_completions);
> @@ -2628,8 +2561,7 @@ int fnic_host_reset(struct scsi_cmnd *sc)
>               fnic->internal_reset_inprogress = true;
>       } else {
>               spin_unlock_irqrestore(&fnic->fnic_lock, flags);
> -             FNIC_SCSI_DBG(KERN_DEBUG, fnic->lport->host,
> -                     "host reset in progress skipping another host reset\n");
> +             fnic_dbg(fnic, SCSI, "host reset in progress skipping another 
> host reset\n");
>               return SUCCESS;
>       }
>       spin_unlock_irqrestore(&fnic->fnic_lock, flags);
> @@ -2703,10 +2635,9 @@ void fnic_scsi_abort_io(struct fc_lport *lp)
>  
>       spin_lock_irqsave(&fnic->fnic_lock, flags);
>       fnic->remove_wait = NULL;
> -     FNIC_SCSI_DBG(KERN_DEBUG, fnic->lport->host,
> -                   "fnic_scsi_abort_io %s\n",
> -                   (fnic->state == FNIC_IN_ETH_MODE) ?
> -                   "SUCCESS" : "FAILED");
> +     fnic_dbg(fnic, SCSI, "%s: %s\n",
> +              __func__,
> +              (fnic->state == FNIC_IN_ETH_MODE) ? "SUCCESS" : "FAILED");
>       spin_unlock_irqrestore(&fnic->fnic_lock, flags);
>  
>  }
> @@ -2819,9 +2750,8 @@ int fnic_is_abts_pending(struct fnic *fnic, struct 
> scsi_cmnd *lr_sc)
>                * Found IO that is still pending with firmware and
>                * belongs to the LUN that we are resetting
>                */
> -             FNIC_SCSI_DBG(KERN_INFO, fnic->lport->host,
> -                           "Found IO in %s on lun\n",
> -                           fnic_ioreq_state_to_str(CMD_STATE(sc)));
> +             fnic_dbg(fnic, SCSI, "Found IO in %s on lun\n",
> +                      fnic_ioreq_state_to_str(CMD_STATE(sc)));
>  
>               if (CMD_STATE(sc) == FNIC_IOREQ_ABTS_PENDING)
>                       ret = 1;
> 

No more responses on this?

Can we either mege my fix (planning to redesign later), or follow
through on your suggested fix?

I believe my fix has a review already.

Thanks.
-- 
Lee Duncan

Reply via email to