summaryrefslogtreecommitdiff
path: root/debian/patches/0001-Assemble-keep-MD_DISK_FAILFAST-and-MD_DISK_WRITEMOST.patch
diff options
context:
space:
mode:
Diffstat (limited to 'debian/patches/0001-Assemble-keep-MD_DISK_FAILFAST-and-MD_DISK_WRITEMOST.patch')
-rw-r--r--debian/patches/0001-Assemble-keep-MD_DISK_FAILFAST-and-MD_DISK_WRITEMOST.patch39
1 files changed, 39 insertions, 0 deletions
diff --git a/debian/patches/0001-Assemble-keep-MD_DISK_FAILFAST-and-MD_DISK_WRITEMOST.patch b/debian/patches/0001-Assemble-keep-MD_DISK_FAILFAST-and-MD_DISK_WRITEMOST.patch
new file mode 100644
index 00000000..cb0ca89a
--- /dev/null
+++ b/debian/patches/0001-Assemble-keep-MD_DISK_FAILFAST-and-MD_DISK_WRITEMOST.patch
@@ -0,0 +1,39 @@
+From 0833f9c3dbaaee202b92ea956f9e2decc7b9593a Mon Sep 17 00:00:00 2001
+From: Gioh Kim <gi-oh.kim@profitbricks.com>
+Date: Tue, 6 Nov 2018 15:27:42 +0100
+Subject: [PATCH 01/11] Assemble: keep MD_DISK_FAILFAST and MD_DISK_WRITEMOSTLY
+ flag
+
+Before updating superblock of slave disks, desired_state value
+is set for the target state of the slave disks. But it forgets
+to check MD_DISK_FAILFAST and MD_DISK_WRITEMOSTLY flags. Then
+start_arrays() calls ADD_NEW_DISK ioctl-call and pass the state
+without MD_DISK_FAILFAST and MD_DISK_WRITEMOSTLY.
+
+Currenlty it does not generate any problem because kernel does not
+care MD_DISK_FAILFAST or MD_DISK_WRITEMOSTLY flags.
+
+Reviewed-by: NeilBrown <neilb@suse.com>
+Signed-off-by: Gioh Kim <gi-oh.kim@profitbricks.com>
+Signed-off-by: Jes Sorensen <jsorensen@fb.com>
+---
+ Assemble.c | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/Assemble.c b/Assemble.c
+index a79466c6..f39c9e1c 100644
+--- a/Assemble.c
++++ b/Assemble.c
+@@ -1704,6 +1704,9 @@ try_again:
+ else
+ desired_state = (1<<MD_DISK_ACTIVE) | (1<<MD_DISK_SYNC);
+
++ desired_state |= devices[j].i.disk.state & ((1<<MD_DISK_FAILFAST) |
++ (1<<MD_DISK_WRITEMOSTLY));
++
+ if (!devices[j].uptodate)
+ continue;
+
+--
+2.19.1
+