Skip to content

st20 port statistics reporting of err_packets appears to be broken with redundancy #1157

@cwhite102

Description

@cwhite102

MTL 25.02.1

We're calling the function st20p_rx_get_port_stats() to fill in the st20_rx_port_status data structure.

When running with redundancy (primary and redundant ports), these calls seem to produce nonsense information.
Sometimes both ports show a lot of errors, sometimes one port shows many errors and not the other.

The stream is received fine using either port individually or with redundancy, so I highly doubt any of these error numbers are correct. No errors are reported without redundancy (from either port).
In addition, no corrupted or reconstructed frames are indicated.

Example of errors being reported mostly on the primary port..
Image

I looked at the MTL code where err_packets is set, and it looked rather questionable...

(st_rx_video_session.c - rv_handle_mbuf)
Image

The 'ret' code is being incremented by 'handler_ret' in a loop. I'm guessing to track any negative value? But then 'ret' is used in the if statement to count err_packets. I think the 'if' statement probably should be using handler_ret but I don't know this code and it isn't well commented.

However, this can't be the only issue, as the error counter is incrementing like crazy when it probably shouldn't be incrementing at all in this test.

Metadata

Metadata

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions