Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:Step:FrontRunner
mdadm.14070
0152-udev-rules-introduce-rules-for-cluster-md-...
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File 0152-udev-rules-introduce-rules-for-cluster-md-to-confirm.patch of Package mdadm.14070
From 0e23c597188a65bdf6cd39fafbf596f2317344da Mon Sep 17 00:00:00 2001 From: Guoqing Jiang <gqjiang@suse.com> Date: Wed, 2 Aug 2017 10:05:41 +0800 Subject: [PATCH] udev rules: introduce rules for cluster-md to confirm device Git-commit: 0e23c597188a65bdf6cd39fafbf596f2317344da Patch-mainline: mdadm-4.0+ References: bsc#1069165, bsc#1069167, bsc#1068030 For cluster scenario, add device is different with native raid. When a node issues adds a device, then the node will broadcast a message with UUID to other nodes in the cluster. If receiving node can find the device with the specific UUID, it must confirm the device, otherwise reports it is missing. Signed-off-by: Guoqing Jiang <gqjiang@suse.com> Signed-off-by: Jes Sorensen <jsorensen@fb.com> Signed-off-by: Coly Li <colyli@suse.de> --- Makefile | 6 ++++-- udev-md-clustered-confirm-device.rules | 21 +++++++++++++++++++++ 2 files changed, 25 insertions(+), 2 deletions(-) create mode 100644 udev-md-clustered-confirm-device.rules diff --git a/Makefile b/Makefile index 021d3ad..0977f27 100644 --- a/Makefile +++ b/Makefile @@ -256,8 +256,10 @@ install-man: mdadm.8 md.4 mdadm.conf.5 mdmon.8 $(INSTALL) -D -m 644 md.4 $(DESTDIR)$(MAN4DIR)/md.4 $(INSTALL) -D -m 644 mdadm.conf.5 $(DESTDIR)$(MAN5DIR)/mdadm.conf.5 -install-udev: udev-md-raid-arrays.rules udev-md-raid-assembly.rules udev-md-raid-creating.rules - @for file in 01-md-raid-creating.rules 63-md-raid-arrays.rules 64-md-raid-assembly.rules ; \ +install-udev: udev-md-raid-arrays.rules udev-md-raid-assembly.rules udev-md-raid-creating.rules \ + udev-md-clustered-confirm-device.rules + @for file in 01-md-raid-creating.rules 63-md-raid-arrays.rules 64-md-raid-assembly.rules \ + 69-md-clustered-confirm-device.rules ; \ do sed -e 's,BINDIR,$(BINDIR),g' udev-$${file#??-} > .install.tmp.1 && \ $(ECHO) $(INSTALL) -D -m 644 udev-$${file#??-} $(DESTDIR)$(UDEVDIR)/rules.d/$$file ; \ $(INSTALL) -D -m 644 .install.tmp.1 $(DESTDIR)$(UDEVDIR)/rules.d/$$file ; \ diff --git a/udev-md-clustered-confirm-device.rules b/udev-md-clustered-confirm-device.rules new file mode 100644 index 0000000..3e5381e --- /dev/null +++ b/udev-md-clustered-confirm-device.rules @@ -0,0 +1,21 @@ +# do not edit this file, it will be overwritten on update + +SUBSYSTEM!="block", GOTO="clustermd_end" + +# handle md arrays +KERNEL!="md*", GOTO="clustermd_end" +ENV{DEVTYPE}!="disk", GOTO="clustermd_end" +ACTION!="change", GOTO="clustermd_end" +ENV{EVENT}!="ADD_DEVICE", GOTO="clustermd_end" +ENV{DEVICE_UUID}!="?*", GOTO="clustermd_end" +ENV{RAID_DISK}!="?*", GOTO="clustermd_end" + +# Based on the received UUID, node confirms the device if +# it is found by blkid, otherwise the node reports it is +# missing. +PROGRAM="BINDIR/blkid -o device -t UUID_SUB=$env{DEVICE_UUID}", ENV{.md.newdevice} = "$result" + +ENV{.md.newdevice}!="", RUN+="BINDIR/mdadm --manage $env{DEVNAME} --cluster-confirm $env{RAID_DISK}:$env{.md.newdevice}" +ENV{.md.newdevice}=="", RUN+="BINDIR/mdadm --manage $env{DEVNAME} --cluster-confirm $env{RAID_DISK}:missing" + +LABEL="clustermd_end" -- 2.13.6
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor