]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
4.14-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 16 Mar 2018 14:02:46 +0000 (15:02 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 16 Mar 2018 14:02:46 +0000 (15:02 +0100)
added patches:
revert-btrfs-use-proper-endianness-accessors-for.patch

queue-4.14/revert-btrfs-use-proper-endianness-accessors-for.patch [new file with mode: 0644]
queue-4.14/series

diff --git a/queue-4.14/revert-btrfs-use-proper-endianness-accessors-for.patch b/queue-4.14/revert-btrfs-use-proper-endianness-accessors-for.patch
new file mode 100644 (file)
index 0000000..230d1c9
--- /dev/null
@@ -0,0 +1,84 @@
+From b9d4efbe7f9c675fb7571cee52d87bc33fb17788 Mon Sep 17 00:00:00 2001
+From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+Date: Fri, 16 Mar 2018 15:00:50 +0100
+Subject: [PATCH] Revert "btrfs: use proper endianness accessors for
+ super_copy"
+
+This reverts commit 3c181c12c431fe33b669410d663beb9cceefcd1b as it
+causes breakage on big endian systems with btrfs images.
+
+Reported-by: Christoph Biedl <linux-kernel.bfrz@manchmal.in-ulm.de>
+Cc: Anand Jain <anand.jain@oracle.com>
+Cc: Liu Bo <bo.li.liu@oracle.com>
+Cc: David Sterba <dsterba@suse.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ fs/btrfs/sysfs.c       |    8 +++++---
+ fs/btrfs/transaction.c |   20 ++++++++------------
+ 2 files changed, 13 insertions(+), 15 deletions(-)
+
+--- a/fs/btrfs/sysfs.c
++++ b/fs/btrfs/sysfs.c
+@@ -422,7 +422,7 @@ static ssize_t btrfs_nodesize_show(struc
+ {
+       struct btrfs_fs_info *fs_info = to_fs_info(kobj);
+-      return snprintf(buf, PAGE_SIZE, "%u\n", fs_info->nodesize);
++      return snprintf(buf, PAGE_SIZE, "%u\n", fs_info->super_copy->nodesize);
+ }
+ BTRFS_ATTR(nodesize, btrfs_nodesize_show);
+@@ -432,7 +432,8 @@ static ssize_t btrfs_sectorsize_show(str
+ {
+       struct btrfs_fs_info *fs_info = to_fs_info(kobj);
+-      return snprintf(buf, PAGE_SIZE, "%u\n", fs_info->sectorsize);
++      return snprintf(buf, PAGE_SIZE, "%u\n",
++                      fs_info->super_copy->sectorsize);
+ }
+ BTRFS_ATTR(sectorsize, btrfs_sectorsize_show);
+@@ -442,7 +443,8 @@ static ssize_t btrfs_clone_alignment_sho
+ {
+       struct btrfs_fs_info *fs_info = to_fs_info(kobj);
+-      return snprintf(buf, PAGE_SIZE, "%u\n", fs_info->sectorsize);
++      return snprintf(buf, PAGE_SIZE, "%u\n",
++                      fs_info->super_copy->sectorsize);
+ }
+ BTRFS_ATTR(clone_alignment, btrfs_clone_alignment_show);
+--- a/fs/btrfs/transaction.c
++++ b/fs/btrfs/transaction.c
+@@ -1722,23 +1722,19 @@ static void update_super_roots(struct bt
+       super = fs_info->super_copy;
+-      /* update latest btrfs_super_block::chunk_root refs */
+       root_item = &fs_info->chunk_root->root_item;
+-      btrfs_set_super_chunk_root(super, root_item->bytenr);
+-      btrfs_set_super_chunk_root_generation(super, root_item->generation);
+-      btrfs_set_super_chunk_root_level(super, root_item->level);
++      super->chunk_root = root_item->bytenr;
++      super->chunk_root_generation = root_item->generation;
++      super->chunk_root_level = root_item->level;
+-      /* update latest btrfs_super_block::root refs */
+       root_item = &fs_info->tree_root->root_item;
+-      btrfs_set_super_root(super, root_item->bytenr);
+-      btrfs_set_super_generation(super, root_item->generation);
+-      btrfs_set_super_root_level(super, root_item->level);
+-
++      super->root = root_item->bytenr;
++      super->generation = root_item->generation;
++      super->root_level = root_item->level;
+       if (btrfs_test_opt(fs_info, SPACE_CACHE))
+-              btrfs_set_super_cache_generation(super, root_item->generation);
++              super->cache_generation = root_item->generation;
+       if (test_bit(BTRFS_FS_UPDATE_UUID_TREE_GEN, &fs_info->flags))
+-              btrfs_set_super_uuid_tree_generation(super,
+-                                                   root_item->generation);
++              super->uuid_tree_generation = root_item->generation;
+ }
+ int btrfs_transaction_in_commit(struct btrfs_fs_info *info)
index 68173fd4545c4bb5a385944a4b155a175d9bc2b2..331729cb035406bb0df22b83de19514864a01de3 100644 (file)
@@ -23,3 +23,4 @@ serial-8250_pci-add-brainboxes-uc-260-4-port-serial-device.patch
 serial-core-mark-port-as-initialized-in-autoconfig.patch
 earlycon-add-reg-offset-to-physical-address-before-mapping.patch
 dm-mpath-fix-passing-integrity-data.patch
+revert-btrfs-use-proper-endianness-accessors-for.patch