summaryrefslogtreecommitdiff
path: root/debian/patches/0012-super-intel-Use-memcpy-to-avoid-confusing-gcc.patch
diff options
context:
space:
mode:
Diffstat (limited to 'debian/patches/0012-super-intel-Use-memcpy-to-avoid-confusing-gcc.patch')
-rw-r--r--debian/patches/0012-super-intel-Use-memcpy-to-avoid-confusing-gcc.patch30
1 files changed, 30 insertions, 0 deletions
diff --git a/debian/patches/0012-super-intel-Use-memcpy-to-avoid-confusing-gcc.patch b/debian/patches/0012-super-intel-Use-memcpy-to-avoid-confusing-gcc.patch
new file mode 100644
index 00000000..c0d5e54f
--- /dev/null
+++ b/debian/patches/0012-super-intel-Use-memcpy-to-avoid-confusing-gcc.patch
@@ -0,0 +1,30 @@
+From 167d8bb8302170676f0e15123738e333383fec7b Mon Sep 17 00:00:00 2001
+From: Jes Sorensen <jsorensen@fb.com>
+Date: Tue, 29 May 2018 16:09:47 -0400
+Subject: [PATCH 12/26] super-intel: Use memcpy() to avoid confusing gcc
+
+When added :0 to serial number and copying it back, use memcpy()
+instead of strncpy() as we know the actual length. This stops gcc
+from complaining with -Werror=stringop-truncation enabled
+
+Signed-off-by: Jes Sorensen <jsorensen@fb.com>
+---
+ super-intel.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/super-intel.c b/super-intel.c
+index 449da1dd..ec7683d9 100644
+--- a/super-intel.c
++++ b/super-intel.c
+@@ -8098,7 +8098,7 @@ static int mark_failure(struct intel_super *super,
+ strcat(buf, ":0");
+ if ((len = strlen(buf)) >= MAX_RAID_SERIAL_LEN)
+ shift = len - MAX_RAID_SERIAL_LEN + 1;
+- strncpy((char *)disk->serial, &buf[shift], MAX_RAID_SERIAL_LEN);
++ memcpy(disk->serial, &buf[shift], len + 1 - shift);
+
+ disk->status |= FAILED_DISK;
+ set_imsm_ord_tbl_ent(map, slot, idx | IMSM_ORD_REBUILD);
+--
+2.17.1
+