[SCSI] bnx2fc: Return error statistics of remote peer
Add support for get_lesb so that the valid statistics are returned by the remote peer when RLS command is issued. Signed-off-by: Bhanu Prakash Gollapudi <bprakash@broadcom.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
This commit is contained in:
committed by
James Bottomley
parent
814740d5f6
commit
f72f6979c9
@@ -99,6 +99,25 @@ static struct notifier_block bnx2fc_cpu_notifier = {
|
|||||||
.notifier_call = bnx2fc_cpu_callback,
|
.notifier_call = bnx2fc_cpu_callback,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
static inline struct net_device *bnx2fc_netdev(const struct fc_lport *lport)
|
||||||
|
{
|
||||||
|
return ((struct bnx2fc_interface *)
|
||||||
|
((struct fcoe_port *)lport_priv(lport))->priv)->netdev;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* bnx2fc_get_lesb() - Fill the FCoE Link Error Status Block
|
||||||
|
* @lport: the local port
|
||||||
|
* @fc_lesb: the link error status block
|
||||||
|
*/
|
||||||
|
static void bnx2fc_get_lesb(struct fc_lport *lport,
|
||||||
|
struct fc_els_lesb *fc_lesb)
|
||||||
|
{
|
||||||
|
struct net_device *netdev = bnx2fc_netdev(lport);
|
||||||
|
|
||||||
|
__fcoe_get_lesb(lport, fc_lesb, netdev);
|
||||||
|
}
|
||||||
|
|
||||||
static void bnx2fc_clean_rx_queue(struct fc_lport *lp)
|
static void bnx2fc_clean_rx_queue(struct fc_lport *lp)
|
||||||
{
|
{
|
||||||
struct fcoe_percpu_s *bg;
|
struct fcoe_percpu_s *bg;
|
||||||
@@ -2512,6 +2531,7 @@ static struct libfc_function_template bnx2fc_libfc_fcn_templ = {
|
|||||||
.elsct_send = bnx2fc_elsct_send,
|
.elsct_send = bnx2fc_elsct_send,
|
||||||
.fcp_abort_io = bnx2fc_abort_io,
|
.fcp_abort_io = bnx2fc_abort_io,
|
||||||
.fcp_cleanup = bnx2fc_cleanup,
|
.fcp_cleanup = bnx2fc_cleanup,
|
||||||
|
.get_lesb = bnx2fc_get_lesb,
|
||||||
.rport_event_callback = bnx2fc_rport_event_handler,
|
.rport_event_callback = bnx2fc_rport_event_handler,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user