Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

AttributeError: 'zio_t' has no member 'io_parent_count' #328

Closed
prakashsurya opened this issue Jun 28, 2023 · 1 comment · Fixed by #331
Closed

AttributeError: 'zio_t' has no member 'io_parent_count' #328

prakashsurya opened this issue Jun 28, 2023 · 1 comment · Fixed by #331

Comments

@prakashsurya
Copy link
Contributor

sdb> zio
ADDRESS                        TYPE  STAGE            WAITER             TIME_ELAPSED
sdb encountered an internal error due to a bug. Here's the
information you need to file the bug:
----------------------------------------------------------
Target Info:
        ProgramFlags.IS_LIVE|IS_LINUX_KERNEL
        Platform(<Architecture.X86_64: 1>, <PlatformFlags.IS_LITTLE_ENDIAN|IS_64_BIT: 3>)

Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/sdb/internal/repl.py", line 107, in eval_cmd
    for obj in invoke([], input_):
  File "/usr/lib/python3/dist-packages/sdb/pipeline.py", line 152, in invoke
    yield from execute_pipeline(first_input, pipeline)
  File "/usr/lib/python3/dist-packages/sdb/pipeline.py", line 84, in execute_pipeline
    yield from massage_input_and_call(pipeline[-1], this_input)
  File "/usr/lib/python3/dist-packages/sdb/pipeline.py", line 67, in massage_input_and_call
    yield from cmd.call(objs)
  File "/usr/lib/python3/dist-packages/sdb/command.py", line 413, in call
    yield from self.__invalid_memory_objects_check(
  File "/usr/lib/python3/dist-packages/sdb/command.py", line 358, in __invalid_memory_objects_check
    for obj in objs:
  File "/usr/lib/python3/dist-packages/sdb/command.py", line 625, in _call
    self.pretty_print(self.caller(objs))
  File "/usr/lib/python3/dist-packages/sdb/commands/zfs/zio.py", line 86, in pretty_print
    for zio in objs:
  File "/usr/lib/python3/dist-packages/sdb/command.py", line 586, in caller
    yield from self.no_input()
  File "/usr/lib/python3/dist-packages/sdb/commands/zfs/zio.py", line 139, in no_input
    if zio.io_parent_count == 0:
AttributeError: 'zio_t' has no member 'io_parent_count'
----------------------------------------------------------
@prakashsurya
Copy link
Contributor Author

See: openzfs/zfs#14948

sdimitro added a commit to sdimitro/sdb that referenced this issue Jul 5, 2023
Our `zio` command broke from the commit introduced by the following
upstream PR: openzfs/zfs#14948

The problem is that the PR removed `io_parent_count` from `struct zio`
and we are using this field to find the top-level ZIOs (e.g. ZIOs with
no parents) in the system.

This patch changes our SBD command to check whether the `io_parent_list`
is populated instead.

= Github Issue Tracker Automation

Closes delphix#328
sdimitro added a commit that referenced this issue Jul 6, 2023
Our `zio` command broke from the commit introduced by the following
upstream PR: openzfs/zfs#14948

The problem is that the PR removed `io_parent_count` from `struct zio`
and we are using this field to find the top-level ZIOs (e.g. ZIOs with
no parents) in the system.

This patch changes our SBD command to check whether the `io_parent_list`
is populated instead.

= Github Issue Tracker Automation

Closes #328
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging a pull request may close this issue.

1 participant