mdadm: backport one patch to fix segfault problem in monitor.c
fix issue:https://gitee.com/src-openeuler/mdadm/issues/I611EL backport upstream bugfix patch to fix segfault problem Signed-off-by: Zhiqiang Liu <liuzhiqiang26@huawei.com>
This commit is contained in:
parent
23c5d609b6
commit
fc24ae7689
@ -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
|
Name: mdadm
|
||||||
Version: 4.2
|
Version: 4.2
|
||||||
Release: 1
|
Release: 2
|
||||||
Summary: The software RAID arrays user manage tools
|
Summary: The software RAID arrays user manage tools
|
||||||
License: GPLv2+
|
License: GPLv2+
|
||||||
URL: http://www.kernel.org/pub/linux/utils/raid/mdadm/
|
URL: http://www.kernel.org/pub/linux/utils/raid/mdadm/
|
||||||
@ -12,6 +12,7 @@ Source3: mdadm.conf
|
|||||||
|
|
||||||
Patch1: 0001-mdadm-remove-Werror-to-fix-Werror-address-of-packed-.patch
|
Patch1: 0001-mdadm-remove-Werror-to-fix-Werror-address-of-packed-.patch
|
||||||
Patch2: 0002-mdadm-Fix-mdadm-r-remove-option-regresision.patch
|
Patch2: 0002-mdadm-Fix-mdadm-r-remove-option-regresision.patch
|
||||||
|
Patch3: 0003-monitor-Avoid-segfault-when-calling-NULL-get_bad_blo.patch
|
||||||
|
|
||||||
BuildRequires: systemd gcc binutils libudev-devel
|
BuildRequires: systemd gcc binutils libudev-devel
|
||||||
Requires(post): systemd coreutils
|
Requires(post): systemd coreutils
|
||||||
@ -77,6 +78,9 @@ install -d -m 710 %{buildroot}/var/run/mdadm/
|
|||||||
%{_mandir}/man*/*
|
%{_mandir}/man*/*
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Mon Nov 14 2022 Zhiqiang Liu <liuzhiqiang26@huawei.com> - 4.2-2
|
||||||
|
- backport upstream bugfix patch to fix segfault problem
|
||||||
|
|
||||||
* Mon Oct 17 2022 wuguanghao <wuguanghao3@huawei.com> - 4.2-1
|
* Mon Oct 17 2022 wuguanghao <wuguanghao3@huawei.com> - 4.2-1
|
||||||
- upgrade version to 4.2
|
- upgrade version to 4.2
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user