Skip to content

Debugging DecodingErrors #4

@cweickhmann

Description

@cweickhmann

Hi! I keep getting DecodingErrors intermittently that crash mmcterm (example below) when connecting on either channels.
I have my doubts that it's a hardware problem, but I'd like to find out more.

What's a good way to debug this?


Example exception, while in MMC console via network (mmcterm -c 0 IPADDR 0x76):

pyipmi exception: short SDUException in thread rx:
Traceback (most recent call last):
  File "/home/cweickhm/.local/lib/python3.12/site-packages/mmcterm/mmcterm.py", line 421, in reader
    status, rx_data = self.ipmi.poll_xchg(bytearray(tx_part))
                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/cweickhm/.local/lib/python3.12/site-packages/mmcterm/mmcterm.py", line 152, in poll_xchg
    return self.raw_cmd(IpmiCode.SOI_POLL_XCHG, tx_data)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/cweickhm/.local/lib/python3.12/site-packages/mmcterm/mmcterm.py", line 110, in raw_cmd
    raw_reply = self.conn.raw_command(0, 0x30, data)
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/cweickhm/.local/lib/python3.12/site-packages/pyipmi/__init__.py", line 225, in raw_command
    return self.interface.send_and_receive_raw(self.target, lun, netfn,
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/cweickhm/.local/lib/python3.12/site-packages/pyipmi/interfaces/rmcp.py", line 656, in send_and_receive_raw
    return self._send_and_receive(target=target,
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/cweickhm/.local/lib/python3.12/site-packages/pyipmi/interfaces/rmcp.py", line 613, in _send_and_receive
    rx_data = self._receive_ipmi_msg(self.ignore_sdu_length)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/cweickhm/.local/lib/python3.12/site-packages/pyipmi/interfaces/rmcp.py", line 439, in _receive_ipmi_msg
    data = msg.unpack(pdu)
           ^^^^^^^^^^^^^^^
  File "/home/cweickhm/.local/lib/python3.12/site-packages/pyipmi/interfaces/rmcp.py", line 328, in unpack
    raise DecodingError('short SDU')
pyipmi.errors.DecodingError: short SDU

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3.12/threading.py", line 1073, in _bootstrap_inner
    self.run()
  File "/usr/lib/python3.12/threading.py", line 1010, in run
    self._target(*self._args, **self._kwargs)
  File "/home/cweickhm/.local/lib/python3.12/site-packages/mmcterm/mmcterm.py", line 423, in reader
    self.reader_abort(f'pyipmi exception: {e}')
  File "/home/cweickhm/.local/lib/python3.12/site-packages/mmcterm/mmcterm.py", line 396, in reader_abort
    self.console.cancel()
  File "/home/cweickhm/.local/lib/python3.12/site-packages/mmcterm/mmcterm.py", line 333, in cancel
    fcntl.ioctl(self.fd, termios.TIOCSTI, b'\0')
OSError: [Errno 5] Input/output error

Metadata

Metadata

Assignees

No one assigned

    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