1 #include "bnx2fc.h" 2 3 void BNX2FC_IO_DBG(const struct bnx2fc_cmd *io_req, const char *fmt, ...) 4 { 5 struct va_format vaf; 6 va_list args; 7 8 if (likely(!(bnx2fc_debug_level & LOG_IO))) 9 return; 10 11 va_start(args, fmt); 12 13 vaf.fmt = fmt; 14 vaf.va = &args; 15 16 if (io_req && io_req->port && io_req->port->lport && 17 io_req->port->lport->host) 18 shost_printk(KERN_INFO, io_req->port->lport->host, 19 PFX "xid:0x%x %pV", 20 io_req->xid, &vaf); 21 else 22 pr_info("NULL %pV", &vaf); 23 24 va_end(args); 25 } 26 27 void BNX2FC_TGT_DBG(const struct bnx2fc_rport *tgt, const char *fmt, ...) 28 { 29 struct va_format vaf; 30 va_list args; 31 32 if (likely(!(bnx2fc_debug_level & LOG_TGT))) 33 return; 34 35 va_start(args, fmt); 36 37 vaf.fmt = fmt; 38 vaf.va = &args; 39 40 if (tgt && tgt->port && tgt->port->lport && tgt->port->lport->host && 41 tgt->rport) 42 shost_printk(KERN_INFO, tgt->port->lport->host, 43 PFX "port:%x %pV", 44 tgt->rport->port_id, &vaf); 45 else 46 pr_info("NULL %pV", &vaf); 47 48 va_end(args); 49 } 50 51 void BNX2FC_HBA_DBG(const struct fc_lport *lport, const char *fmt, ...) 52 { 53 struct va_format vaf; 54 va_list args; 55 56 if (likely(!(bnx2fc_debug_level & LOG_HBA))) 57 return; 58 59 va_start(args, fmt); 60 61 vaf.fmt = fmt; 62 vaf.va = &args; 63 64 if (lport && lport->host) 65 shost_printk(KERN_INFO, lport->host, PFX "%pV", &vaf); 66 else 67 pr_info("NULL %pV", &vaf); 68 69 va_end(args); 70 } 71