dcavalca / rpms / grub2

Forked from rpms/grub2 3 years ago
Clone

Blame SOURCES/0071-btrfs-fix-get_root-key-comparison-failures-due-to-en.patch

28f7f8
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
39700a
From: Thomas Falcon <tlfalcon@linux.vnet.ibm.com>
39700a
Date: Mon, 31 Mar 2014 15:32:30 +0100
28f7f8
Subject: [PATCH] btrfs: fix get_root key comparison failures due to endianness
39700a
39700a
* grub-core/fs/btrfs.c (get_root): Convert
39700a
GRUB_BTRFS_ROOT_VOL_OBJECTID to little-endian.
39700a
---
39700a
 grub-core/fs/btrfs.c | 2 +-
28f7f8
 ChangeLog            | 7 +++++++
39700a
 2 files changed, 8 insertions(+), 1 deletion(-)
39700a
28f7f8
diff --git a/grub-core/fs/btrfs.c b/grub-core/fs/btrfs.c
28f7f8
index 89666b6fd59..f7b6c152037 100644
28f7f8
--- a/grub-core/fs/btrfs.c
28f7f8
+++ b/grub-core/fs/btrfs.c
28f7f8
@@ -1201,7 +1201,7 @@ get_root (struct grub_btrfs_data *data, struct grub_btrfs_key *key,
28f7f8
   struct grub_btrfs_key key_out, key_in;
28f7f8
   struct grub_btrfs_root_item ri;
28f7f8
 
28f7f8
-  key_in.object_id = GRUB_BTRFS_ROOT_VOL_OBJECTID;
28f7f8
+  key_in.object_id = grub_cpu_to_le64_compile_time (GRUB_BTRFS_ROOT_VOL_OBJECTID);
28f7f8
   key_in.offset = 0;
28f7f8
   key_in.type = GRUB_BTRFS_ITEM_TYPE_ROOT_ITEM;
28f7f8
   err = lower_bound (data, &key_in, &key_out,
39700a
diff --git a/ChangeLog b/ChangeLog
28f7f8
index 1cb3b683fcf..accffade86b 100644
39700a
--- a/ChangeLog
39700a
+++ b/ChangeLog
39700a
@@ -1,3 +1,10 @@
39700a
+2014-03-31  Thomas Falcon <tlfalcon@linux.vnet.ibm.com>
39700a
+
39700a
+	btrfs: fix get_root key comparison failures due to endianness
39700a
+
39700a
+	* grub-core/fs/btrfs.c (get_root): Convert
39700a
+	GRUB_BTRFS_ROOT_VOL_OBJECTID to little-endian.
39700a
+
39700a
 2014-03-31  Colin Watson  <cjwatson@ubuntu.com>
39700a
 
39700a
 	Fix partmap, cryptodisk, and abstraction handling in grub-mkconfig.