Red Hat Bugzilla – Bug 1308795
/dev/disk/by-id/wwn-* links for SATA devices have words in reverse order
Last modified: 2016-11-03 20:51:55 EDT
Description of problem: After upgrading from RHEL 7.1 to the latest RHEL 7.2 release, the order of the words used to generate the links under /dev/disk/by-id have been reversed. For example, instead of an entry such as wwn-0x4d30435853805002, this should be wwn-0x5002538043584d30. Version-Release number of selected component (if applicable): How reproducible: Steps to Reproduce: 1. 2. 3. Actual results: Expected results: Additional info: https://bugzilla.redhat.com/show_bug.cgi?id=1227503 is the upstream bug for same issue Note from customer: This is happening with RHEL release 7.2.1511. The specific kernel version where this issue has been observed is 3.10.0-327.4.5.el7.x86_64. After performing the 7.2 upgrade, the problem occurs 100% of the time. It is necessary to revert to RHEL 7.1 to solve the problem. We rely on the wwn ids of disks in our software, making the assumption that they will never change for a given hard drive. We want to move to the 7.2 kernel to get other fixes that are included in this release but are not able to do so because of this issue with the incorrect wwn entries. We understand that a fix for this isn't planned until RHEL 7.3. We would like to see this escalated and a fix included in a sooner release, for example the z-stream update planned for the end of March.
pushed to staging https://github.com/lnykryn/systemd-rhel/commit/d1c32b69edc7f0f62a7c3f65691c2cb9fedcb112 https://github.com/lnykryn/systemd-rhel/commit/2a62c3c66698148f1439176bd6ca5a946b8de550 -> POST
*** Bug 1273306 has been marked as a duplicate of this bug. ***
If the customer is interested to test the fix, here is a test build of currently staged patches for 7.3 which also includes fix for this issue. https://copr.fedorainfracloud.org/coprs/lnykryn/systemd-rhel-staging/
committed to master branch -> https://github.com/lnykryn/systemd-rhel/commit/a405c6309d143b998197141b3531201ed07d56d9 https://github.com/lnykryn/systemd-rhel/commit/e38ebe01cbc1f415a067e96d0373ad22944b3e70 -> modified
It is important to notify users of this change in the RHEL 7.2 API. I have copied the Doc Text from the 7.2.z BZ here, with some modifications. Please review. This should be included prominently in the 7.3 Release Notes, IMO. Ben, will this impact automatically generated multipath user friendly names, or does multipath get the WWID from another source? (Thanks, Mulhern, for pointing out this issue.)
(In reply to Tom Coughlan from comment #15) > > Ben, will this impact automatically generated multipath user friendly names, > or does multipath get the WWID from another source? That depends. Lukáš, does this effect the value of ID_SERIAL in the udev database (or ID_UID, which we use for dasd devices)? If not, then multipath device names shouldn't be effected.
From the code it looks that those variables should not be affected.
Barry, Please develop a test for this in 7.3 dm-multipath. The test summary is: install 7.2 with dm-multipath and user friendly names. Observe that the WWID in /dev/disk/by-id/wwn-* is incorrect. Take a look at the automatically generated mapping from mpathn to WWID. Hopefully it is the correct WWID. Update to 7.3. Observe that the WWID in /dev/disk/by-id/wwn-* is now correct. Make sure the mpathn mapping is correct and unchanged. Nikhil, Please follow-up on comments 12, 13. Is this resolved? Tom
I have sent an email out to the team. We will decide who will create the test case and put it into our 7.3 test plan.
Verified with systemd-219-30.el7. :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :: [ LOG ] :: /dev/disk/by-id/wwn-* links' word order :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :: [ 06:19:09 ] :: [ INFO ] :: Current ID: 5000c5004ef448e7 :: [ 06:19:09 ] :: [ INFO ] :: Expected ID: 5000c5004ef448e7 :: [ BEGIN ] :: If both IDs are empty, the machine doesn't have any SATA disk connected... :: actually running '[[ ! -z '5000c5004ef448e7' && ! -z '5000c5004ef448e7' ]]' :: [ PASS ] :: If both IDs are empty, the machine doesn't have any SATA disk connected... (Expected 0, got 0) :: [ BEGIN ] :: Running '[[ '5000c5004ef448e7' == '5000c5004ef448e7' ]]' :: [ PASS ] :: Command '[[ '5000c5004ef448e7' == '5000c5004ef448e7' ]]' (Expected 0, got 0) Where current and expected IDs are following: CURRENT_ID=$(udevadm info -p /sys/class/block/sda | grep "ID_WWN=" | sed -re 's/.*ID_WWN=0x(.+)/\1/') EXPECTED_ID=$(hdparm -I /dev/sda | grep WWN | sed -re 's/.+ Identifier: (.+)/\1/')
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, 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://rhn.redhat.com/errata/RHBA-2016-2216.html