Home Home > GIT Browse > SLE15-AZURE
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Sterba <dsterba@suse.cz>2012-03-24 01:11:53 +0100
committerDavid Sterba <dsterba@suse.cz>2012-03-24 01:11:53 +0100
commit7e9dd21f1ecfdef61b7e81d6c7eaf4ac23fde530 (patch)
tree5e3ea040d1bffd6c57d607a3eb9f1ec9c35bd58c
parentd97ade6b368a2df016856cf3a396bba01215e2fd (diff)
Revert "Btrfs: increase the global block reserve estimates"rpm-3.3.0-2
-rw-r--r--patches.suse/btrfs-REVERT-increase-the-global-block-reserve-estim.patch39
-rw-r--r--series.conf4
2 files changed, 43 insertions, 0 deletions
diff --git a/patches.suse/btrfs-REVERT-increase-the-global-block-reserve-estim.patch b/patches.suse/btrfs-REVERT-increase-the-global-block-reserve-estim.patch
new file mode 100644
index 0000000000..91d27da0ce
--- /dev/null
+++ b/patches.suse/btrfs-REVERT-increase-the-global-block-reserve-estim.patch
@@ -0,0 +1,39 @@
+From: David Sterba <dsterba@suse.cz>
+Date: Sat, 24 Mar 2012 01:01:49 +0100
+Subject: [PATCH] Revert "Btrfs: increase the global block reserve estimates"
+Patch-mainline: 3.3
+
+This reverts commit 5500cdbe14d7435e04f66ff3cfb8ecd8b8e44ebf.
+
+Reason: causes early ENOSPC
+
+ Btrfs: increase the global block reserve estimates
+
+ When doing IO with large amounts of data fragmentation, the global block
+ reserve calulations are too low. This increases them to avoid
+ ENOSPC crashes.
+
+ Signed-off-by: Liu Bo <liubo2009@cn.fujitsu.com>
+ Signed-off-by: Chris Mason <chris.mason@oracle.com>
+
+Signed-off-by: David Sterba <dsterba@suse.cz>
+---
+ fs/btrfs/extent-tree.c | 2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git a/fs/btrfs/extent-tree.c b/fs/btrfs/extent-tree.c
+index 37e0a80..f6f584f 100644
+--- a/fs/btrfs/extent-tree.c
++++ b/fs/btrfs/extent-tree.c
+@@ -4110,7 +4110,7 @@ static u64 calc_global_metadata_size(struct btrfs_fs_info *fs_info)
+ num_bytes += div64_u64(data_used + meta_used, 50);
+
+ if (num_bytes * 3 > meta_used)
+- num_bytes = div64_u64(meta_used, 3) * 2;
++ num_bytes = div64_u64(meta_used, 3);
+
+ return ALIGN(num_bytes, fs_info->extent_root->leafsize << 10);
+ }
+--
+1.7.6.233.gd79bc
+
diff --git a/series.conf b/series.conf
index bbf4ef4d93..60785e642f 100644
--- a/series.conf
+++ b/series.conf
@@ -390,6 +390,10 @@
patches.suse/btrfs-0020-Remove-BUG_ON-from-__finish_chunk_alloc.patch
patches.suse/btrfs-error-varargs
patches.suse/btrfs-handle-EIO
+
+ # 3.3
+ patches.suse/btrfs-REVERT-increase-the-global-block-reserve-estim.patch
+
########################################################
# Reiserfs Patches
########################################################