From 3c36ec510dea469a549fb7d6fbdababbe25dea600c25f054ff743bbdc0d981c5 Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Wed, 24 Oct 2018 18:19:53 +0000 Subject: [PATCH] Accepting request 643835 from home:gqjiang:branches:Base:System Fix bsc#1112539 Ledmon is not working correctly for arrays under reshape OBS-URL: https://build.opensuse.org/request/show/643835 OBS-URL: https://build.opensuse.org/package/show/Base:System/ledmon?expand=0&rev=28 --- ...olume-under-reshape-as-DEVICE_TYPE_V.patch | 38 +++++++++++++++++++ ledmon.changes | 6 +++ ledmon.spec | 2 + 3 files changed, 46 insertions(+) create mode 100644 0001-Recognize-RAID-volume-under-reshape-as-DEVICE_TYPE_V.patch diff --git a/0001-Recognize-RAID-volume-under-reshape-as-DEVICE_TYPE_V.patch b/0001-Recognize-RAID-volume-under-reshape-as-DEVICE_TYPE_V.patch new file mode 100644 index 0000000..9dd963f --- /dev/null +++ b/0001-Recognize-RAID-volume-under-reshape-as-DEVICE_TYPE_V.patch @@ -0,0 +1,38 @@ +From c57e7d6d2dabe9e9d17d2e3aa4a2e77f7dc70acd Mon Sep 17 00:00:00 2001 +From: Michal Zylowski +Date: Tue, 27 Mar 2018 20:27:19 +0200 +Subject: [PATCH] Recognize RAID volume under reshape as DEVICE_TYPE_VOLUME + +Ledmon detects RAID device type by parsing value of sysfs file +"metadata_version" (/sys/block/mdXXX/md/metadata_version). When IMSM +RAID volume is under reshape, metadata_version file has value +"external:-md127/0". In current ledmon version this md device will be +wrongly recognized as container. + +Recognize volumes under reshape as DEVICE_TYPE_VOLUME not +DEVICE_TYPE_CONTAINER. + +This patch also fixes problem with blinking during reshape on some +environments. + +Signed-off-by: Michal Zylowski +--- + src/sysfs.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/sysfs.c b/src/sysfs.c +index 1a18a8b36bf8..f42be09a9cd9 100644 +--- a/src/sysfs.c ++++ b/src/sysfs.c +@@ -125,7 +125,7 @@ static enum device_type _get_device_type(const char *path) + if (p != NULL) { + if (strlen(p) > 0) { + if (strncmp(p, "external:", 9) == 0) { +- if (p[9] == '/') ++ if (p[9] == '/' || p[9] == '-') + result = DEVICE_TYPE_VOLUME; + else + result = DEVICE_TYPE_CONTAINER; +-- +2.12.3 + diff --git a/ledmon.changes b/ledmon.changes index 9ee17ad..874f2b9 100644 --- a/ledmon.changes +++ b/ledmon.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Tue Oct 23 02:18:22 UTC 2018 - gqjiang@suse.com + +- Add a patch to fix bsc#1112539 + + 0001-Recognize-RAID-volume-under-reshape-as-DEVICE_TYPE_V.patch + ------------------------------------------------------------------- Thu Mar 8 04:50:53 UTC 2018 - zlliu@suse.com diff --git a/ledmon.spec b/ledmon.spec index a821a59..0ecc8c0 100644 --- a/ledmon.spec +++ b/ledmon.spec @@ -24,6 +24,7 @@ License: GPL-2.0 Group: Hardware/Other Url: https://github.com/intel/ledmon/ Source0: https://github.com/intel/ledmon/archive/v%{version}.tar.gz +Patch1: 0001-Recognize-RAID-volume-under-reshape-as-DEVICE_TYPE_V.patch BuildRequires: libsgutils-devel BuildRequires: libudev-devel Provides: sgpio:/sbin/ledmon @@ -37,6 +38,7 @@ solutions. %prep %setup -q +%patch1 -p1 %build make -j1 CXFLAGS="%{optflags} -lsgutils2 -std=c99"