mirror of
https://github.com/rd-stuffs/msm-4.14.git
synced 2025-02-20 11:45:48 +08:00
IB/hfi1: Add software counter for ctxt0 seq drop
[ Upstream commit 5ffd048698ea5139743acd45e8ab388a683642b8 ] All other code paths increment some form of drop counter. This was missed in the original implementation. Fixes: 82c2611daaf0 ("staging/rdma/hfi1: Handle packets with invalid RHF on context 0") Link: https://lore.kernel.org/r/20200106134228.119356.96828.stgit@awfm-01.aw.intel.com Reviewed-by: Kaike Wan <kaike.wan@intel.com> Signed-off-by: Mike Marciniszyn <mike.marciniszyn@intel.com> Signed-off-by: Dennis Dalessandro <dennis.dalessandro@intel.com> Signed-off-by: Jason Gunthorpe <jgg@mellanox.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
b48c693690
commit
b8005f7f3e
@ -1686,6 +1686,14 @@ static u64 access_sw_pio_drain(const struct cntr_entry *entry,
|
||||
return dd->verbs_dev.n_piodrain;
|
||||
}
|
||||
|
||||
static u64 access_sw_ctx0_seq_drop(const struct cntr_entry *entry,
|
||||
void *context, int vl, int mode, u64 data)
|
||||
{
|
||||
struct hfi1_devdata *dd = context;
|
||||
|
||||
return dd->ctx0_seq_drop;
|
||||
}
|
||||
|
||||
static u64 access_sw_vtx_wait(const struct cntr_entry *entry,
|
||||
void *context, int vl, int mode, u64 data)
|
||||
{
|
||||
@ -4246,6 +4254,8 @@ static struct cntr_entry dev_cntrs[DEV_CNTR_LAST] = {
|
||||
access_sw_cpu_intr),
|
||||
[C_SW_CPU_RCV_LIM] = CNTR_ELEM("RcvLimit", 0, 0, CNTR_NORMAL,
|
||||
access_sw_cpu_rcv_limit),
|
||||
[C_SW_CTX0_SEQ_DROP] = CNTR_ELEM("SeqDrop0", 0, 0, CNTR_NORMAL,
|
||||
access_sw_ctx0_seq_drop),
|
||||
[C_SW_VTX_WAIT] = CNTR_ELEM("vTxWait", 0, 0, CNTR_NORMAL,
|
||||
access_sw_vtx_wait),
|
||||
[C_SW_PIO_WAIT] = CNTR_ELEM("PioWait", 0, 0, CNTR_NORMAL,
|
||||
|
@ -864,6 +864,7 @@ enum {
|
||||
C_DC_PG_STS_TX_MBE_CNT,
|
||||
C_SW_CPU_INTR,
|
||||
C_SW_CPU_RCV_LIM,
|
||||
C_SW_CTX0_SEQ_DROP,
|
||||
C_SW_VTX_WAIT,
|
||||
C_SW_PIO_WAIT,
|
||||
C_SW_PIO_DRAIN,
|
||||
|
@ -710,6 +710,7 @@ static noinline int skip_rcv_packet(struct hfi1_packet *packet, int thread)
|
||||
{
|
||||
int ret;
|
||||
|
||||
packet->rcd->dd->ctx0_seq_drop++;
|
||||
/* Set up for the next packet */
|
||||
packet->rhqoff += packet->rsize;
|
||||
if (packet->rhqoff >= packet->maxcnt)
|
||||
|
@ -1043,6 +1043,8 @@ struct hfi1_devdata {
|
||||
|
||||
char *boardname; /* human readable board info */
|
||||
|
||||
u64 ctx0_seq_drop;
|
||||
|
||||
/* reset value */
|
||||
u64 z_int_counter;
|
||||
u64 z_rcv_limit;
|
||||
|
Loading…
x
Reference in New Issue
Block a user