Linux 4.18.10
[linux/fpc-iii.git] / drivers / scsi / bnx2fc / bnx2fc_debug.c
blob47ba3ba1e03bf6e00f6e254922f06ca4efe627d3
1 /* bnx2fc_debug.c: QLogic Linux FCoE offload driver.
2 * Handles operations such as session offload/upload etc, and manages
3 * session resources such as connection id and qp resources.
5 * Copyright (c) 2008-2013 Broadcom Corporation
6 * Copyright (c) 2014-2016 QLogic Corporation
7 * Copyright (c) 2016-2017 Cavium Inc.
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License as published by
11 * the Free Software Foundation.
15 #include "bnx2fc.h"
17 void BNX2FC_IO_DBG(const struct bnx2fc_cmd *io_req, const char *fmt, ...)
19 struct va_format vaf;
20 va_list args;
22 if (likely(!(bnx2fc_debug_level & LOG_IO)))
23 return;
25 va_start(args, fmt);
27 vaf.fmt = fmt;
28 vaf.va = &args;
30 if (io_req && io_req->port && io_req->port->lport &&
31 io_req->port->lport->host)
32 shost_printk(KERN_INFO, io_req->port->lport->host,
33 PFX "xid:0x%x %pV",
34 io_req->xid, &vaf);
35 else
36 pr_info("NULL %pV", &vaf);
38 va_end(args);
41 void BNX2FC_TGT_DBG(const struct bnx2fc_rport *tgt, const char *fmt, ...)
43 struct va_format vaf;
44 va_list args;
46 if (likely(!(bnx2fc_debug_level & LOG_TGT)))
47 return;
49 va_start(args, fmt);
51 vaf.fmt = fmt;
52 vaf.va = &args;
54 if (tgt && tgt->port && tgt->port->lport && tgt->port->lport->host &&
55 tgt->rport)
56 shost_printk(KERN_INFO, tgt->port->lport->host,
57 PFX "port:%x %pV",
58 tgt->rport->port_id, &vaf);
59 else
60 pr_info("NULL %pV", &vaf);
62 va_end(args);
65 void BNX2FC_HBA_DBG(const struct fc_lport *lport, const char *fmt, ...)
67 struct va_format vaf;
68 va_list args;
70 if (likely(!(bnx2fc_debug_level & LOG_HBA)))
71 return;
73 va_start(args, fmt);
75 vaf.fmt = fmt;
76 vaf.va = &args;
78 if (lport && lport->host)
79 shost_printk(KERN_INFO, lport->host, PFX "%pV", &vaf);
80 else
81 pr_info("NULL %pV", &vaf);
83 va_end(args);