aa9c0e2d02
- Backport the NBFT parser from git master
37 lines
1.4 KiB
Diff
37 lines
1.4 KiB
Diff
From 26e4343c2ba2db7a3c5696bbf61bb87942ac02bb Mon Sep 17 00:00:00 2001
|
|
From: Tomas Bzatek <tbzatek@redhat.com>
|
|
Date: Thu, 13 Apr 2023 17:28:42 +0200
|
|
Subject: [PATCH 11/18] nbft: Fix nbft_ssns_flags endianness test
|
|
|
|
Missing flags endianness conversion leading to ssns_ext_info
|
|
not being parsed on s390x and armhf.
|
|
---
|
|
src/nvme/nbft.c | 4 ++--
|
|
1 file changed, 2 insertions(+), 2 deletions(-)
|
|
|
|
diff --git a/src/nvme/nbft.c b/src/nvme/nbft.c
|
|
index f91d21b..940dd8e 100644
|
|
--- a/src/nvme/nbft.c
|
|
+++ b/src/nvme/nbft.c
|
|
@@ -169,7 +169,7 @@ static int read_ssns_exended_info(struct nbft_info *nbft,
|
|
"invalid ID in SSNS extended info descriptor");
|
|
verify(raw_ssns_ei->version == 1,
|
|
"invalid version in SSNS extended info descriptor");
|
|
- verify(le16_to_cpu(raw_ssns_ei->ssns_index) == le16_to_cpu(ssns->index),
|
|
+ verify(le16_to_cpu(raw_ssns_ei->ssns_index) == ssns->index,
|
|
"SSNS index doesn't match extended info descriptor index");
|
|
|
|
if (!(le32_to_cpu(raw_ssns_ei->flags) & NBFT_SSNS_EXT_INFO_VALID))
|
|
@@ -292,7 +292,7 @@ static int read_ssns(struct nbft_info *nbft,
|
|
goto fail;
|
|
|
|
/* SSNS extended info */
|
|
- if (raw_ssns->flags & NBFT_SSNS_EXTENDED_INFO_IN_USE) {
|
|
+ if (le16_to_cpu(raw_ssns->flags) & NBFT_SSNS_EXTENDED_INFO_IN_USE) {
|
|
struct nbft_ssns_ext_info *ssns_extended_info;
|
|
|
|
if (!get_heap_obj(raw_ssns, ssns_extended_info_desc_obj, 0,
|
|
--
|
|
2.39.2
|
|
|