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
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions