Files
poky/meta/recipes-extended/mdadm/files/mdadm-fix-ptest-build-errors.patch
Wenzong Fan 82107b1209 mdadm: fix CFLAGS and ptest issues
* Pass global CFLAGS to build:

The CFLAGS does not pass to build at all since it was redefined by
mdadm Makefile:

  CFLAGS = $(CWFLAGS) $(CXFLAGS) ...

This could be done by setting 'CXFLAGS="${CFLAGS}"'.

* Also fix ptest build errors caused by global CFLAGS:

  raid6check.c:352:2: error: ignoring return value of posix_memalign, \
  declared with attribute warn_unused_result [-Werror=unused-result]

  raid6check.c:315:8: error: 'stripe_buf' may be used uninitialized \
  in this function [-Werror=maybe-uninitialized]

(From OE-Core rev: 60f71fa4da86ca4c7c37115c343db194a3b7b47b)

Signed-off-by: Wenzong Fan <wenzong.fan@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-11-25 08:08:09 +00:00

51 lines
1.7 KiB
Diff

From f3acf8499a4cc400206c5c56f0a6c69192ed55de Mon Sep 17 00:00:00 2001
From: Wenzong Fan <wenzong.fan@windriver.com>
Date: Sat, 7 Nov 2015 04:21:17 -0500
Subject: [PATCH] mdadm: fix ptest build errors
Check return value for posix_memalign() to fix ptest build error:
raid6check.c:352:2: error: ignoring return value of posix_memalign, \
declared with attribute warn_unused_result [-Werror=unused-result]
Initialize *stripe_buf as NULL to fix ptest build error:
raid6check.c: In function 'check_stripes':
raid6check.c:315:8: error: 'stripe_buf' may be used uninitialized \
in this function [-Werror=maybe-uninitialized]
Upstream-Status: Pending
Signed-off-by: Wenzong Fan <wenzong.fan@windriver.com>
---
raid6check.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/raid6check.c b/raid6check.c
index cb8522e..9462bcf 100644
--- a/raid6check.c
+++ b/raid6check.c
@@ -312,7 +312,7 @@ int check_stripes(struct mdinfo *info, int *source, unsigned long long *offsets,
/* read the data and p and q blocks, and check we got them right */
int data_disks = raid_disks - 2;
int syndrome_disks = data_disks + is_ddf(layout) * 2;
- char *stripe_buf;
+ char *stripe_buf = NULL;
/* stripes[] is indexed by raid_disk and holds chunks from each device */
char **stripes = xmalloc(raid_disks * sizeof(char*));
@@ -349,7 +349,9 @@ int check_stripes(struct mdinfo *info, int *source, unsigned long long *offsets,
if (!tables_ready)
make_tables();
- posix_memalign((void**)&stripe_buf, 4096, raid_disks * chunk_size);
+ if (posix_memalign((void**)&stripe_buf, 4096, raid_disks * chunk_size) != 0)
+ goto exitCheck;
+
block_index_for_slot += 2;
blocks += 2;
blocks_page += 2;
--
1.9.1