Skip to content

sizeof command failed on ZFS enum #277

@sdimitro

Description

@sdimitro
sdb> ptype zfs_uio_seg
enum zfs_uio_seg {
	UIO_USERSPACE = 0,
	UIO_SYSSPACE = 1,
	UIO_BVEC = 2,
	UIO_ITER = 3,
}
sdb> sizeof zfs_uio_seg
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(self.target, [], input_):
  File "/usr/lib/python3/dist-packages/sdb/pipeline.py", line 147, 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 43, in massage_input_and_call
    yield from cmd.call(objs)
  File "/usr/lib/python3/dist-packages/sdb/command.py", line 329, in call
    result, not issubclass(self.__class__, SingleInputCommand))
  File "/usr/lib/python3/dist-packages/sdb/command.py", line 290, in __invalid_memory_objects_check
    for obj in objs:
  File "/usr/lib/python3/dist-packages/sdb/commands/sizeof.py", line 60, in _call
    yield sdb.create_object('size_t', sdb.type_canonicalize_size(type_))
  File "/usr/lib/python3/dist-packages/sdb/target.py", line 141, in type_canonicalize_size
    return int(type_canonicalize(type_).size)
AttributeError: enum type does not have a size
----------------------------------------------------------

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