Uploaded image for project: 'RHEL'
  1. RHEL
  2. RHEL-143353

[RHEL10] libfdisk/src/gpt.c:3016: fdisk_gpt_set_partition_attrs: Assertion `cxt->label' failed.

Linking RHIVOS CVEs to...Migration: Automation ...Sync from "Extern...XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: Minor Minor
    • None
    • rhel-10.2
    • libblockdev
    • None
    • None
    • None
    • rhel-storage-management
    • None
    • False
    • False
    • Hide

      None

      Show
      None
    • None
    • None
    • None
    • None
    • Unspecified
    • Unspecified
    • Unspecified
    • None

      What were you trying to do that didn't work?

      What is the impact of this issue to you?

      Please provide the package NVR for which the bug is seen:

      How reproducible is this bug?:

      Steps to reproduce

      1.  
      2.  
      3.  

      Expected results

      Actual results

       

       

      [2026-01-22 01:16:17]  INFO: ##### self.available_disks ['/dev/sdd', '/dev/sde', '/dev/sdc', '/dev/nvme0n1'] 
      [2026-01-22 01:16:17]  INFO: Testing part_set_part_attributes with invalid parameters 
      [2026-01-22 01:16:17]  INFO: Correctly rejected invalid disk (empty string): Error 
      [2026-01-22 01:16:17]  INFO: Correctly rejected invalid disk (None value): TypeError 
      [2026-01-22 01:16:17]  INFO: Correctly rejected invalid disk (non-existent device): Error 
      python3: libfdisk/src/gpt.c:3016: fdisk_gpt_set_partition_attrs: Assertion `cxt->label' failed.
      Fatal Python error: AbortedCurrent thread 0x00007f26d88a9e80 (most recent call first):
        File "/home/cryptsetup_libblockdev/libblockdev/tests/bd/test_bd_part_parameter_validation.py", line 824 in test_part_set_attributes_invalid_params
        File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 193 in pytest_pyfunc_call
        File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121 in _multicall
        File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120 in _hookexec
        File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512 in __call__
        File "/usr/local/lib/python3.12/site-packages/_pytest/python.py", line 1836 in runtest
        File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 173 in pytest_runtest_call
        File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121 in _multicall
        File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120 in _hookexec
        File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512 in __call__
        File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 266 in <lambda>
        File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 345 in from_call
        File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 265 in call_runtest_hook
        File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 226 in call_and_report
        File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 133 in runtestprotocol
        File "/usr/local/lib/python3.12/site-packages/_pytest/runner.py", line 114 in pytest_runtest_protocol
        File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121 in _multicall
        File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120 in _hookexec
        File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512 in __call__
        File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 351 in pytest_runtestloop
        File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121 in _multicall
        File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120 in _hookexec
        File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512 in __call__
        File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 326 in _main
        File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 272 in wrap_session
        File "/usr/local/lib/python3.12/site-packages/_pytest/main.py", line 319 in pytest_cmdline_main
        File "/usr/local/lib/python3.12/site-packages/pluggy/_callers.py", line 121 in _multicall
        File "/usr/local/lib/python3.12/site-packages/pluggy/_manager.py", line 120 in _hookexec
        File "/usr/local/lib/python3.12/site-packages/pluggy/_hooks.py", line 512 in __call__
        File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 174 in main
        File "/usr/local/lib/python3.12/site-packages/_pytest/config/__init__.py", line 197 in console_main
        File "/usr/local/bin/pytest", line 7 in <module>Extension modules: psutil._psutil_linux, psutil._psutil_posix, charset_normalizer.md, requests.packages.charset_normalizer.md, requests.packages.chardet.md, gi._gi, _dbus_bindings (total: 7)
      Aborted (core dumped)
      [root@storageqe-109 libblockdev]# 
      

       

       

       

      Jan 22 01:16:12 storageqe-109 INFO: #### will start test_part_set_attributes_invalid_params #####
      Jan 22 01:16:12 storageqe-109 pytest[1611586]: INFO: #### before available_disks ['/dev/sdb', '/dev/sdd', '/dev/sde', '/dev/sdc', '/dev/nvme0n1'] ####
      Jan 22 01:16:12 storageqe-109 INFO: #### before available_disks ['/dev/sdb', '/dev/sdd', '/dev/sde', '/dev/sdc', '/dev/nvme0n1'] #### 
      Jan 22 01:16:12 storageqe-109 root[1614200]: [conftest.py:590:post_test_health_checks] lsblk
      Jan 22 01:16:17 storageqe-109 root[1614210]: [udisks2.py:273:get_block_size] lsblk -n -b -o SIZE /dev/sdb
      Jan 22 01:16:17 storageqe-109 root[1614213]: [udisks2.py:273:get_block_size] lsblk -n -b -o SIZE /dev/sdd
      Jan 22 01:16:17 storageqe-109 root[1614216]: [udisks2.py:273:get_block_size] lsblk -n -b -o SIZE /dev/sde
      Jan 22 01:16:17 storageqe-109 root[1614219]: [udisks2.py:273:get_block_size] lsblk -n -b -o SIZE /dev/sdc
      Jan 22 01:16:17 storageqe-109 root[1614222]: [udisks2.py:273:get_block_size] lsblk -n -b -o SIZE /dev/nvme0n1
      Jan 22 01:16:17 storageqe-109 root[1614228]: [conftest.py:156:get_device] lsblk
      Jan 22 01:16:17 storageqe-109 kernel: sdb:
      Jan 22 01:16:17 storageqe-109 kernel: sdb: sdb1
      Jan 22 01:16:17 storageqe-109 systemd-coredump[1614253]: Process 1611586 (pytest) of user 0 terminated abnormally with signal 6/ABRT, processing...
      Jan 22 01:16:17 storageqe-109 systemd[1]: Started systemd-coredump@8-1614253-0.service - Process Core Dump (PID 1614253/UID 0).
      Jan 22 01:16:17 storageqe-109 systemd-coredump[1614255]: Process 1611586 (pytest) of user 0 dumped core.
      
      Module /usr/bin/python3.12 from rpm python3.12-3.12.12-3.el10_1.x86_64
      Module syslog.cpython-312-x86_64-linux-gnu.so from rpm python3.12-3.12.12-3.el10_1.x86_64
      Module libjson-glib-1.0.so.0 from rpm json-glib-1.8.0-5.el10.x86_64
      Module libbd_smartmontools.so.3 from rpm libblockdev-3.4.0-2.el10.x86_64
      Module libnvme.so.1 from rpm libnvme-1.15-3.el10.x86_64
      Module libbd_nvme.so.3 from rpm libblockdev-3.4.0-2.el10.x86_64
      Module libdaxctl.so.1 from rpm ndctl-82-2.el10.x86_64
      Module libndctl.so.6 from rpm ndctl-82-2.el10.x86_64
      Module libbd_nvdimm.so.3 from rpm libblockdev-3.4.0-2.el10.x86_64
      Module libcom_err.so.2 from rpm e2fsprogs-1.47.1-5.el10.x86_64
      Module libe2p.so.2 from rpm e2fsprogs-1.47.1-5.el10.x86_64
      Module libext2fs.so.2 from rpm e2fsprogs-1.47.1-5.el10.x86_64
      Module libbd_fs.so.3 from rpm libblockdev-3.4.0-2.el10.x86_64
      Module libfdisk.so.1 from rpm util-linux-2.40.2-13.el10.x86_64
      Module libbd_part.so.3 from rpm libblockdev-3.4.0-2.el10.x86_64
      Module libbd_mdraid.so.3 from rpm libblockdev-3.4.0-2.el10.x86_64
      Module libbd_dm.so.3 from rpm libblockdev-3.4.0-2.el10.x86_64
      Module libjson-c.so.5 from rpm json-c-0.18-3.el10.x86_64
      Module libvolume_key.so.1 from rpm volume_key-0.3.12-25.el10.x86_64
      Module libkeyutils.so.1 from rpm keyutils-1.6.3-5.el10.x86_64
      Module libnspr4.so from rpm nss-3.112.0-4.el10_0.x86_64
      Module libplc4.so from rpm nss-3.112.0-4.el10_0.x86_64
      Module libplds4.so from rpm nss-3.112.0-4.el10_0.x86_64
      Module libnssutil3.so from rpm nss-3.112.0-4.el10_0.x86_64
      Module libnss3.so from rpm nss-3.112.0-4.el10_0.x86_64
      Module libsmime3.so from rpm nss-3.112.0-4.el10_0.x86_64
      Module libssl3.so from rpm nss-3.112.0-4.el10_0.x86_64
      Module libbd_crypto.so.3 from rpm libblockdev-3.4.0-2.el10.x86_64
      Module libbd_loop.so.3 from rpm libblockdev-3.4.0-2.el10.x86_64
      Module libbd_swap.so.3 from rpm libblockdev-3.4.0-2.el10.x86_64
      Module libyaml-0.so.2 from rpm libyaml-0.2.5-16.el10.x86_64
      Module libdevmapper.so.1.02 from rpm lvm2-2.03.32-3.el10.x86_64
      Module libbd_lvm-dbus.so.3 from rpm libblockdev-3.4.0-2.el10.x86_64
      Module grp.cpython-312-x86_64-linux-gnu.so from rpm python3.12-3.12.12-3.el10_1.x86_64
      Module libsystemd.so.0 from rpm systemd-257-16.el10.x86_64
      Module libdbus-1.so.3 from rpm dbus-1.14.10-5.el10.x86_64
      Module _dbus_bindings.so from rpm dbus-python-1.3.2-8.el10.x86_64
      Module libzstd.so.1 from rpm zstd-1.5.5-9.el10.x86_64
      Module libcap.so.2 from rpm libcap-2.69-7.el10.x86_64
      Module libkmod.so.2 from rpm kmod-31-12.el10.x86_64
      Module libudev.so.1 from rpm systemd-257-16.el10.x86_64
      Module libbd_utils.so.3 from rpm libblockdev-3.4.0-2.el10.x86_64
      Module libblockdev.so.3 from rpm libblockdev-3.4.0-2.el10.x86_64
      Module libgmp.so.10 from rpm gmp-6.2.1-12.el10.x86_64
      Module libmpfr.so.6 from rpm mpfr-4.2.1-5.el10.x86_64
      Module libbytesize.so.1 from rpm libbytesize-2.10-5.el10.x86_64
      Module _ctypes.cpython-312-x86_64-linux-gnu.so from rpm python3.12-3.12.12-3.el10_1.x86_64
      Module libblkid.so.1 from rpm util-linux-2.40.2-13.el10.x86_64
      Module libselinux.so.1 from rpm libselinux-3.9-2.el10.x86_64
      Module libmount.so.1 from rpm util-linux-2.40.2-13.el10.x86_64
      Module libgio-2.0.so.0 from rpm glib2-2.80.4-10.el10_1.x86_64
      Module libgmodule-2.0.so.0 from rpm glib2-2.80.4-10.el10_1.x86_64
      Module libpcre2-8.so.0 from rpm pcre2-10.44-1.el10.3.x86_64
      Module libffi.so.8 from rpm libffi-3.4.4-10.el10.x86_64
      Module libgobject-2.0.so.0 from rpm glib2-2.80.4-10.el10_1.x86_64
      Module libgirepository-1.0.so.1 from rpm gobject-introspection-1.79.1-6.el10.x86_64
      Module libglib-2.0.so.0 from rpm glib2-2.80.4-10.el10_1.x86_64
      Module _gi.cpython-312-x86_64-linux-gnu.so from rpm pygobject3-3.46.0-7.el10.x86_64
      Module _multibytecodec.cpython-312-x86_64-linux-gnu.so from rpm python3.12-3.12.12-3.el10_1.x86_64
      Module _queue.cpython-312-x86_64-linux-gnu.so from rpm python3.12-3.12.12-3.el10_1.x86_64
      Module libssl.so.3 from rpm openssl-3.5.1-6.el10.x86_64
      Module _ssl.cpython-312-x86_64-linux-gnu.so from rpm python3.12-3.12.12-3.el10_1.x86_64
      Module resource.cpython-312-x86_64-linux-gnu.so from rpm python3.12-3.12.12-3.el10_1.x86_64
      Module _psutil_posix.abi3.so from rpm python-psutil-5.9.8-6.el10.x86_64
      Module _psutil_linux.abi3.so from rpm python-psutil-5.9.8-6.el10.x86_64
      Module libexpat.so.1 from rpm expat-2.7.1-1.el10_1.3.x86_64
      Module pyexpat.cpython-312-x86_64-linux-gnu.so from rpm python3.12-3.12.12-3.el10_1.x86_64
      Module _elementtree.cpython-312-x86_64-linux-gnu.so from rpm python3.12-3.12.12-3.el10_1.x86_64
      Module _posixsubprocess.cpython-312-x86_64-linux-gnu.so from rpm python3.12-3.12.12-3.el10_1.x86_64
      Module fcntl.cpython-312-x86_64-linux-gnu.so from rpm python3.12-3.12.12-3.el10_1.x86_64
      Module libmpdec.so.3 from rpm mpdecimal-2.5.1-12.el10.x86_64
      Module _decimal.cpython-312-x86_64-linux-gnu.so from rpm python3.12-3.12.12-3.el10_1.x86_64
      Module _heapq.cpython-312-x86_64-linux-gnu.so from rpm python3.12-3.12.12-3.el10_1.x86_64
      Module _json.cpython-312-x86_64-linux-gnu.so from rpm python3.12-3.12.12-3.el10_1.x86_64
      Module _datetime.cpython-312-x86_64-linux-gnu.so from rpm python3.12-3.12.12-3.el10_1.x86_64
      Module array.cpython-312-x86_64-linux-gnu.so from rpm python3.12-3.12.12-3.el10_1.x86_64
      Module select.cpython-312-x86_64-linux-gnu.so from rpm python3.12-3.12.12-3.el10_1.x86_64
      Module _socket.cpython-312-x86_64-linux-gnu.so from rpm python3.12-3.12.12-3.el10_1.x86_64
      Module binascii.cpython-312-x86_64-linux-gnu.so from rpm python3.12-3.12.12-3.el10_1.x86_64
      Module _csv.cpython-312-x86_64-linux-gnu.so from rpm python3.12-3.12.12-3.el10_1.x86_64
      Module _struct.cpython-312-x86_64-linux-gnu.so from rpm python3.12-3.12.12-3.el10_1.x86_64
      Module _blake2.cpython-312-x86_64-linux-gnu.so from rpm python3.12-3.12.12-3.el10_1.x86_64
      Module libcrypto.so.3 from rpm openssl-3.5.1-6.el10.x86_64
      Module _hashlib.cpython-312-x86_64-linux-gnu.so from rpm python3.12-3.12.12-3.el10_1.x86_64
      Module _random.cpython-312-x86_64-linux-gnu.so from rpm python3.12-3.12.12-3.el10_1.x86_64
      Module libuuid.so.1 from rpm util-linux-2.40.2-13.el10.x86_64
      Module _uuid.cpython-312-x86_64-linux-gnu.so from rpm python3.12-3.12.12-3.el10_1.x86_64
      Module unicodedata.cpython-312-x86_64-linux-gnu.so from rpm python3.12-3.12.12-3.el10_1.x86_64
      Module liblzma.so.5 from rpm xz-5.6.2-4.el10_0.x86_64
      Module _lzma.cpython-312-x86_64-linux-gnu.so from rpm python3.12-3.12.12-3.el10_1.x86_64
      Module libbz2.so.1 from rpm bzip2-1.0.8-25.el10.x86_64
      Module _bz2.cpython-312-x86_64-linux-gnu.so from rpm python3.12-3.12.12-3.el10_1.x86_64
      Module libz.so.1 from rpm zlib-ng-2.2.3-3.el10_1.x86_64
      Module zlib.cpython-312-x86_64-linux-gnu.so from rpm python3.12-3.12.12-3.el10_1.x86_64
      Module _bisect.cpython-312-x86_64-linux-gnu.so from rpm python3.12-3.12.12-3.el10_1.x86_64
      Module math.cpython-312-x86_64-linux-gnu.so from rpm python3.12-3.12.12-3.el10_1.x86_64
      Module _opcode.cpython-312-x86_64-linux-gnu.so from rpm python3.12-3.12.12-3.el10_1.x86_64
      Module libpython3.12.so.1.0 from rpm python3.12-3.12.12-3.el10_1.x86_64
      Stack trace of thread 1611586:
      #0  0x00007f26d80be6cc __pthread_kill_implementation (libc.so.6 + 0x976cc)
      #1  0x00007f26d80680d6 raise (libc.so.6 + 0x410d6)
      #2  0x00007f26d8068180 __restore_rt (libc.so.6 + 0x41180)
      #3  0x00007f26d80be6cc __pthread_kill_implementation (libc.so.6 + 0x976cc)
      #4  0x00007f26d80680d6 raise (libc.so.6 + 0x410d6)
      #5  0x00007f26d804f8fa abort (libc.so.6 + 0x288fa)
      #6  0x00007f26d804f81e __assert_fail_base.cold (libc.so.6 + 0x2881e)
      #7  0x00007f26c5910af6 fdisk_gpt_set_partition_attrs (libfdisk.so.1 + 0x37af6)
      #8  0x00007f26c5933495 bd_part_set_part_attributes (libbd_part.so.3 + 0x7495)
      #9  0x00007f26c9b98056 ffi_call_unix64 (libffi.so.8 + 0xa056)
      #10 0x00007f26c9b936f1 ffi_call_int.lto_
      Jan 22 01:16:17 storageqe-109 systemd[1]: systemd-coredump@8-1614253-0.service: Deactivated successfully.
      Jan 22 01:16:17 storageqe-109 systemd[1]: systemd-coredump@8-1614253-0.service: Consumed 185ms CPU time, 86.6M memory peak.
      

       

                  # Create GPT partition table and partition
                  assert luks_helper.bd.part_create_table(device, luks_helper.bd.PartTableType.GPT, True)
                  part_spec = luks_helper.bd.part_create_part(
                      device, luks_helper.bd.PartType.NORMAL,
                      1024*1024, 512*1024*1024, luks_helper.bd.PartAlign.OPTIMAL
                  )
                  assert part_spec is not None, "Failed to create partition"            # Test invalid disk parameter
                  invalid_disks = [
                      ("", "empty string"),
                      (None, "None value"),
                      ("/dev/nonexistent", "non-existent device"),
                      ("/proc/cpuinfo", "non-block device"),
                  ]            for disk, description in invalid_disks:
                      try:
                          succ = luks_helper.bd.part_set_part_attributes(disk, part_spec.path, 0)
                          if succ:
                              assert False, f"Should have rejected invalid disk ({description}): {repr(str(disk)[:40])}"
                          else:
                              luks_helper._print(f"INFO: Rejected invalid disk ({description})")
                      except AssertionError:
                          raise
                      except Exception as e:
                          luks_helper._print(f"INFO: Correctly rejected invalid disk ({description}): {type(e).__name__}")
       

       
       

      6.12.0-184.el10.x86_64

      libblockdev-3.4.0-2.el10.x86_64

       

              vtrefny@redhat.com Vojtěch Trefný
              guazhang@redhat.com Guangwu Zhang
              Vojtěch Trefný Vojtěch Trefný
              Guangwu Zhang Guangwu Zhang
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

                Created:
                Updated: