From f3acf8499a4cc400206c5c56f0a6c69192ed55de Mon Sep 17 00:00:00 2001 From: Wenzong Fan 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 --- 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