lvm2/udev-Check-for-DM_NR_VALID_PATHS.patch
LiuhuaMelody Wang 8ac4ae703b Accepting request 393600 from home:scarabeus_iv:branches:Base:System
- Update patch use-mirrortype-asdefault-whenclvmdrunning.patch
  to match up the patches/pvmove_support_clustered_vg.diff and not
  use the define declared only when building clvm codebase;
  it is still broken if someone changes the PID location, but at least
  it now does not depend on clvm code
- Regenerate_initrd in post of the lvm2 main pkg
- Update baselibs to point to split-out devicemapper libraries

- Keep in sync the common configuration options that are shared among
  all the variants dm/lvm2/clvm

- Provide symlinks to 1.02 versions of dm and dm-event libs
  * this should sort out binary packages without the need of double
    rebuilding

- Update to 2.02.152 release, read WHATS_NEW for detailed log.
- Refresh patches:
  * 10-dm.rules-Reset-state-variable-for-spurious-events.patch
  * device-mapper-gcc-warnings.patch
  * device-mapper-link.patch
  * udev-Check-for-DM_NR_VALID_PATHS.patch
- Slightly tweak btrfs patch as the code changed for the detection:
  * fsadm-add-support-for-btrfs.patch

- Build and install properly cluster files
- Remove csm-converter.tar.gz as the evms was last present on sle10
  and thus migration is bit out of scope today

- Add pre_checkin.sh to allow syncing of patches between packages:
  workflow = add everything to lvm2.spec and run pre_checkin.sh

OBS-URL: https://build.opensuse.org/request/show/393600
OBS-URL: https://build.opensuse.org/package/show/Base:System/lvm2?expand=0&rev=150
2016-05-11 03:42:15 +00:00

50 lines
1.8 KiB
Diff

From b8354ac161b5ab8a4f5842201d7ee69f5089c6dc Mon Sep 17 00:00:00 2001
From: Hannes Reinecke <hare@suse.de>
Date: Thu, 12 Jun 2014 17:07:31 +0200
Subject: [PATCH] udev: Check for DM_NR_VALID_PATHS
When the device becomes inaccessible we must not run any program
requiring disk access, as this will stall and cause udev to
eventually timeout this event.
So check for DM_NR_VALID_PATHS before calling these programs.
References: bnc#875233
Signed-off-by: Hannes Reinecke <hare@suse.de>
---
udev/10-dm.rules.in | 1 -
udev/13-dm-disk.rules.in | 2 ++
udev/69-dm-lvm-metad.rules.in | 1 +
3 files changed, 3 insertions(+), 1 deletion(-)
Index: LVM2.2.02.152/udev/13-dm-disk.rules.in
===================================================================
--- LVM2.2.02.152.orig/udev/13-dm-disk.rules.in
+++ LVM2.2.02.152/udev/13-dm-disk.rules.in
@@ -18,10 +18,12 @@ SYMLINK+="disk/by-id/dm-name-$env{DM_NAM
ENV{DM_UUID}=="?*", SYMLINK+="disk/by-id/dm-uuid-$env{DM_UUID}", OPTIONS+="string_escape=replace"
ENV{DM_SUSPENDED}=="1", GOTO="dm_end"
+ENV{DM_NR_VALID_PATHS}=="0", GOTO="dm_blkid_end"
ENV{DM_NOSCAN}=="1", GOTO="dm_watch"
ENV{DM_TARGET_TYPES}=="|*error*", GOTO="dm_end"
(BLKID_RULE)
+LABEL="dm_blkid_end"
ENV{DM_UDEV_LOW_PRIORITY_FLAG}=="1", OPTIONS+="link_priority=-100"
OPTIONS+="watch"
ENV{DM_TARGET_TYPES}=="*snapshot-origin*", OPTIONS+="link_priority=-90"
Index: LVM2.2.02.152/udev/69-dm-lvm-metad.rules.in
===================================================================
--- LVM2.2.02.152.orig/udev/69-dm-lvm-metad.rules.in
+++ LVM2.2.02.152/udev/69-dm-lvm-metad.rules.in
@@ -47,6 +47,7 @@ ENV{ID_FS_UUID_ENC}=="?*", SYMLINK+="dis
# DM device:
KERNEL!="dm-[0-9]*", GOTO="next"
+KERNEL=="dm-[0-9]*", ENV{DM_NR_VALID_PATHS}=="0", GOTO="lvm_end"
ENV{DM_UDEV_PRIMARY_SOURCE_FLAG}=="1", ENV{DM_ACTIVATION}=="1", GOTO="lvm_scan"
GOTO="lvm_end"