Bug 2078815
| Summary: | libblockdev doesn't corectly gather UUID for RAID containers | |||
|---|---|---|---|---|
| Product: | Red Hat Enterprise Linux 8 | Reporter: | Vojtech Trefny <vtrefny> | |
| Component: | libblockdev | Assignee: | Vojtech Trefny <vtrefny> | |
| Status: | CLOSED ERRATA | QA Contact: | guazhang <guazhang> | |
| Severity: | unspecified | Docs Contact: | ||
| Priority: | unspecified | |||
| Version: | 8.6 | CC: | guazhang | |
| Target Milestone: | rc | Keywords: | Triaged | |
| Target Release: | --- | Flags: | pm-rhel:
mirror+
|
|
| Hardware: | Unspecified | |||
| OS: | Unspecified | |||
| Whiteboard: | ||||
| Fixed In Version: | libblockdev-2.24-11.el8 | Doc Type: | If docs needed, set a value | |
| Doc Text: | Story Points: | --- | ||
| Clone Of: | ||||
| : | 2109026 (view as bug list) | Environment: | ||
| Last Closed: | 2022-11-08 10:01:37 UTC | Type: | Bug | |
| Regression: | --- | Mount Type: | --- | |
| Documentation: | --- | CRM: | ||
| Verified Versions: | Category: | --- | ||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | ||
| Cloudforms Team: | --- | Target Upstream Version: | ||
| Embargoed: | ||||
| Bug Depends On: | ||||
| Bug Blocks: | 2063791 | |||
|
Description
Vojtech Trefny
2022-04-26 09:45:50 UTC
Hi, Did the libblockdev case cover it ? (In reply to guazhang from comment #1) > Hi, > > Did the libblockdev case cover it ? No, this currently isn't covered by the libblockdev test suite. I'll try to add a test case for it, but we might need a special hardware to test this (creating a fake/emulated DDF array might be possible for the test). I'll let you know when I have a patch ready. upstream PR: https://github.com/storaged-project/libblockdev/pull/563 and https://github.com/storaged-project/libblockdev/pull/762 Tests are part of the second PR. For manual testing: 1. Create the DDF RAID with mdadm # mdadm --create /dev/md/ddf --name=ddf --level container --raid-disks=2 --metadata=ddf /dev/vda /dev/vdb # mdadm --create /dev/md/vol0 --name=vol0 --level raid1 --raid-disks=2 /dev/md/ddf 2. Check that libblockdev can get UUID of the container both with `bd_md_examine` and `bd_md_detail`: In [2]: examine_data = BlockDev.md_examine("/dev/vda") In [3]: examine_data.uuid Out[3]: '50efb57b-85be-0a7e-47f6-6b7ff6b47e63' In [4]: detail_data = BlockDev.md_detail("/dev/md/ddf") In [5]: detail_data.uuid Out[5]: '50efb57b-85be-0a7e-47f6-6b7ff6b47e63' Hi
please have a look the error ?
container_name="bd_test_md"
mdname="bd_test_ddf"
disks_list = self.get_free_disk(num=2)
bd.md_create(container_name, 'container', disks_list,0, 'ddf', False)
ret = self.run("mdadm --create /dev/md/%s --run --level=raid0 --raid-devices=2 /dev/md/%s" % (mdname, container_name))
rdata = bd.md_detail(mdname)
if rdata.level != 'raid0' :
print("FAIL: ddata level is not raid0")
print(dir(rdata))
if rdata.container != '/dev/md/%s' % container_name:
print("FAIL: could not get container name ")
AttributeError: 'MDDetailData' object has no attribute 'container'
The commit adding the "container" attribute to "MDDetailData" was not backported to RHEL, it would an ABI change so we merged it upstream but it isn't part of the downstream patch for RHEL 8/9. So from https://github.com/storaged-project/libblockdev/pull/762 only the first two commits are in RHEL. test pass with fixed package, move to verified Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory (libblockdev bug fix and enhancement update), and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHBA-2022:7646 |