RCV_BYTES does not reset to 0 on switches
fruhland opened this issue · 0 comments
fruhland commented
For some reason, when I reset the counters on our switch, only the lower 40-bits of the RCV_BYTES counter are set to zero. The most significant 24-bits are set to 0x0000ff, which leads to a value of more than 1 peta-byte after a reset. As a quick fix, I always set the the most significant 24-bits of this counter to zero manually by performing a bitwise AND with 0x000000ffffffffff.
This issue should be investigated further and, if possible, a better solution should be developed.
Current solution in IbPort.cpp:
mad_decode_field(pmaQueryBuf, IB_PC_EXT_RCV_BYTES_F, &value64);
if(m_nodeType == IB_NODE_SWITCH) {
value64 &= 0x000000ffffffffffULL;
}