summaryrefslogtreecommitdiff
path: root/debian/patches/0020-super0-Use-memmove-when-adjusting-sparc2.2-superbloc.patch
diff options
context:
space:
mode:
authorDimitri John Ledkov <xnox@ubuntu.com>2018-06-26 15:38:57 +0100
committerDimitri John Ledkov <xnox@ubuntu.com>2018-06-26 15:38:57 +0100
commit9421e599c44cd50d3df4cd019cd3c53d9320e93d (patch)
tree2d9606679ad49fbc9f9cf72b3a3a87d7a6dc8fff /debian/patches/0020-super0-Use-memmove-when-adjusting-sparc2.2-superbloc.patch
parentec9bfc63255cdf01a67171d1228f562c927c6d36 (diff)
Cherrypick master patches up to 4th of June 2018.debian/4.1_rc1-3archive/debian/4.1_rc1-3
Diffstat (limited to 'debian/patches/0020-super0-Use-memmove-when-adjusting-sparc2.2-superbloc.patch')
-rw-r--r--debian/patches/0020-super0-Use-memmove-when-adjusting-sparc2.2-superbloc.patch34
1 files changed, 34 insertions, 0 deletions
diff --git a/debian/patches/0020-super0-Use-memmove-when-adjusting-sparc2.2-superbloc.patch b/debian/patches/0020-super0-Use-memmove-when-adjusting-sparc2.2-superbloc.patch
new file mode 100644
index 00000000..776434ec
--- /dev/null
+++ b/debian/patches/0020-super0-Use-memmove-when-adjusting-sparc2.2-superbloc.patch
@@ -0,0 +1,34 @@
+From 2dcd6492718c2921feac993aa71ed3a7c2522077 Mon Sep 17 00:00:00 2001
+From: Jes Sorensen <jsorensen@fb.com>
+Date: Thu, 31 May 2018 13:17:46 -0400
+Subject: [PATCH 20/26] super0: Use memmove() when adjusting sparc2.2
+ superblock data
+
+memcpy() does not allow overlapping copies, switch to memmove()
+
+Signed-off-by: Jes Sorensen <jsorensen@fb.com>
+---
+ super0.c | 7 ++++---
+ 1 file changed, 4 insertions(+), 3 deletions(-)
+
+diff --git a/super0.c b/super0.c
+index 756cab5e..42989b9f 100644
+--- a/super0.c
++++ b/super0.c
+@@ -520,9 +520,10 @@ static int update_super0(struct supertype *st, struct mdinfo *info,
+ * up 4 bytes before continuing
+ */
+ __u32 *sb32 = (__u32*)sb;
+- memcpy(sb32+MD_SB_GENERIC_CONSTANT_WORDS+7,
+- sb32+MD_SB_GENERIC_CONSTANT_WORDS+7+1,
+- (MD_SB_WORDS - (MD_SB_GENERIC_CONSTANT_WORDS+7+1))*4);
++
++ memmove(sb32+MD_SB_GENERIC_CONSTANT_WORDS+7,
++ sb32+MD_SB_GENERIC_CONSTANT_WORDS+7+1,
++ (MD_SB_WORDS - (MD_SB_GENERIC_CONSTANT_WORDS+7+1))*4);
+ if (verbose >= 0)
+ pr_err("adjusting superblock of %s for 2.2/sparc compatibility.\n",
+ devname);
+--
+2.17.1
+