mdadm: backport upstream bugfix patch to fix segfault problem in monitor.c
fix issue:https://gitee.com/src-openeuler/mdadm/issues/I611EL Signed-off-by: Zhiqiang Liu <liuzhiqiang26@huawei.com> (cherry picked from commit 5b9ae7e1c802fb1081c5e4be3f693e18673b5147)
This commit is contained in:
parent
fe67177a9a
commit
50418b0cd7
@ -0,0 +1,35 @@
|
||||
From 9ae62977b51dab0f4bb46b1c8ea5ebd1705b2f4d Mon Sep 17 00:00:00 2001
|
||||
From: Logan Gunthorpe <logang@deltatee.com>
|
||||
Date: Wed, 22 Jun 2022 14:25:10 -0600
|
||||
Subject: [PATCH] monitor: Avoid segfault when calling NULL get_bad_blocks
|
||||
|
||||
Not all struct superswitch implement a get_bad_blocks() function,
|
||||
yet mdmon seems to call it without checking for NULL and thus
|
||||
occasionally segfaults in the test 10ddf-geometry.
|
||||
|
||||
Fix this by checking for NULL before calling it.
|
||||
|
||||
Signed-off-by: Logan Gunthorpe <logang@deltatee.com>
|
||||
Acked-by: Mariusz Tkaczyk <mariusz.tkaczyk@linux.intel.com>
|
||||
Signed-off-by: Jes Sorensen <jes@trained-monkey.org>
|
||||
---
|
||||
monitor.c | 3 +++
|
||||
1 file changed, 3 insertions(+)
|
||||
|
||||
diff --git a/monitor.c b/monitor.c
|
||||
index b877e595..820a93d0 100644
|
||||
--- a/monitor.c
|
||||
+++ b/monitor.c
|
||||
@@ -311,6 +311,9 @@ static int check_for_cleared_bb(struct active_array *a, struct mdinfo *mdi)
|
||||
struct md_bb *bb;
|
||||
int i;
|
||||
|
||||
+ if (!ss->get_bad_blocks)
|
||||
+ return -1;
|
||||
+
|
||||
/*
|
||||
* Get a list of bad blocks for an array, then read list of
|
||||
* acknowledged bad blocks from kernel and compare it against metadata
|
||||
--
|
||||
2.33.0
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
Name: mdadm
|
||||
Version: 4.1
|
||||
Release: rc2.0.10
|
||||
Release: rc2.0.11
|
||||
Summary: The software RAID arrays user manage tools
|
||||
License: GPLv2+
|
||||
URL: http://www.kernel.org/pub/linux/utils/raid/mdadm/
|
||||
@ -25,6 +25,7 @@ Patch6011: 6011-add-missing-units-to-examine.patch
|
||||
Patch6012: 6012-Create-Block-rounding-size-to-max.patch
|
||||
Patch6013: 6013-mdadm-fix-coredump-of-mdadm-monitor-r.patch
|
||||
Patch6014: 6014-mdadm-Fix-mdadm-r-remove-option-regresision.patch
|
||||
Patch6015: 6015-monitor-Avoid-segfault-when-calling-NULL-get_bad_blo.patch
|
||||
|
||||
BuildRequires: systemd gcc binutils
|
||||
Requires(post): systemd coreutils
|
||||
@ -87,6 +88,9 @@ install -d -m 710 %{buildroot}/var/run/mdadm/
|
||||
%{_mandir}/man*/*
|
||||
|
||||
%changelog
|
||||
* Mon Nov 14 2022 Zhiqiang Liu <liuzhiqiang26@huawei.com> - 4.1-rc2.0.11
|
||||
- backport upstream bugfix patch to fix segfault problem in monitor.c
|
||||
|
||||
* Mon Jun 27 2022 Zhiqiang Liu <liuzhiqiang26@huawei.com> - 4.1-rc2.0.10
|
||||
- fix segfault of --monitor -r
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user