|
|
0e8dd1 |
From af5732176cb192206f555a1c00dd5431a757367f Mon Sep 17 00:00:00 2001
|
|
|
0e8dd1 |
From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= <zbyszek@in.waw.pl>
|
|
|
0e8dd1 |
Date: Wed, 22 Jul 2015 00:23:47 -0400
|
|
|
0e8dd1 |
Subject: [PATCH] ata_id: unreverse WWN identifier
|
|
|
0e8dd1 |
|
|
|
0e8dd1 |
An endianness conversion was lost in 6024a6e302bad6bcf073fa84a41a6123305dc845.
|
|
|
0e8dd1 |
Restore it. Now ata_id and scsi_id output match.
|
|
|
0e8dd1 |
|
|
|
0e8dd1 |
https://bugzilla.redhat.com/show_bug.cgi?id=1227503
|
|
|
0e8dd1 |
|
|
|
0e8dd1 |
Cherry-picked from: 01f61d331bb5038f0c877ac03c54333328b6ea28
|
|
|
0e8dd1 |
Resolves: #1308795
|
|
|
0e8dd1 |
---
|
|
|
0e8dd1 |
src/udev/ata_id/ata_id.c | 14 ++++++++++++--
|
|
|
0e8dd1 |
1 file changed, 12 insertions(+), 2 deletions(-)
|
|
|
0e8dd1 |
|
|
|
0e8dd1 |
diff --git a/src/udev/ata_id/ata_id.c b/src/udev/ata_id/ata_id.c
|
|
|
0e8dd1 |
index b6f28c6..4adec44 100644
|
|
|
0e8dd1 |
--- a/src/udev/ata_id/ata_id.c
|
|
|
0e8dd1 |
+++ b/src/udev/ata_id/ata_id.c
|
|
|
0e8dd1 |
@@ -638,10 +638,20 @@ int main(int argc, char *argv[])
|
|
|
0e8dd1 |
* All other values are reserved.
|
|
|
0e8dd1 |
*/
|
|
|
0e8dd1 |
word = identify.wyde[108];
|
|
|
0e8dd1 |
- if ((word & 0xf000) == 0x5000)
|
|
|
0e8dd1 |
+ if ((word & 0xf000) == 0x5000) {
|
|
|
0e8dd1 |
+ uint64_t wwwn;
|
|
|
0e8dd1 |
+
|
|
|
0e8dd1 |
+ wwwn = identify.wyde[108];
|
|
|
0e8dd1 |
+ wwwn <<= 16;
|
|
|
0e8dd1 |
+ wwwn |= identify.wyde[109];
|
|
|
0e8dd1 |
+ wwwn <<= 16;
|
|
|
0e8dd1 |
+ wwwn |= identify.wyde[110];
|
|
|
0e8dd1 |
+ wwwn <<= 16;
|
|
|
0e8dd1 |
+ wwwn |= identify.wyde[111];
|
|
|
0e8dd1 |
printf("ID_WWN=0x%1$" PRIx64 "\n"
|
|
|
0e8dd1 |
"ID_WWN_WITH_EXTENSION=0x%1$" PRIx64 "\n",
|
|
|
0e8dd1 |
- identify.octa[108/4]);
|
|
|
0e8dd1 |
+ wwwn);
|
|
|
0e8dd1 |
+ }
|
|
|
0e8dd1 |
|
|
|
0e8dd1 |
/* from Linux's include/linux/ata.h */
|
|
|
0e8dd1 |
if (identify.wyde[0] == 0x848a ||
|