1
0
mirror of git://sourceware.org/git/lvm2.git synced 2024-12-21 13:34:40 +03:00
LVM2 mirror repository https://sourceware.org/lvm2/
Go to file
Martin Wilck 7a7b8a7778 udev: keep systemd vars on change event in 69-dm-lvm-metad.rules for systemd reload
The current logic that avoids setting SYSTEMD_ALIAS and SYSTEMD_WANTS
on "change" events is flawed in the default "systemd background job"
configuration. For systemd, it's important that device properties don't
change spuriously.

If an "add" event starts lvm2-pvscan@.service for a device, and a
"change" event follows, removing SYSTEMD_ALIAS and SYSTEMD_WANTS from the
udev db, information about unit dependencies between the device and the
pvscan service can be lost in systemd, in particular if the daemon
configuration is reloaded.

Steps to reproduce problem:

- create a device with an LVM PV
- remove device
- add device (generates "add" and "change" uevents for the device)
  (at this point SYSTEMD_ALIAS and SYSTEMD_WANTS are clear in udev db)
- systemctl daemon-reload
  (systemd reloads udev db)
- vgchange -a n
- remove device

=> the lvm2-pvscan@.service for the device is still active although the
device is gone.

- add device again

=> the PV is not detected, because systemd sees the lvm2-pvscan@.service
as active and thus doesn't restart it.

The original purpose of this logic was to avoid volumes being scanned
over and over again. With systemd background jobs, that isn't necessary,
because systemd will not restart the job as long as it's active.

Signed-off-by: Martin Wilck <mwilck@suse.com>
2018-04-17 11:38:12 +02:00
autoconf autoconf: Fix py-compile permissions 2016-02-18 01:05:05 +00:00
conf device: Queue any aio beyond defined limits. 2018-02-08 20:15:37 +00:00
coverity coverity: model few more functions 2017-06-27 12:17:16 +02:00
daemons cleanup: use zalloc 2018-03-17 23:33:58 +01:00
doc doc: Fixing VDO document 2018-02-16 17:10:54 +01:00
include device: Basic config and setup to support async I/O. 2018-02-08 20:15:14 +00:00
lib cleanup: typo fix 2018-03-19 12:05:57 +01:00
libdaemon tidy: Add missing underscores to statics. 2017-10-18 15:58:13 +01:00
libdm libdm: enhance mounted fs detection 2018-03-23 17:24:58 +01:00
liblvm python: some LVs do need exclusive activation 2018-01-23 11:45:18 +01:00
man lvconvert: accept striped LV as snapshot COW LV 2018-03-17 23:33:58 +01:00
nix lockd: Clean up spec 2015-07-04 14:36:57 +02:00
old-tests doc: change fsf address 2016-01-21 12:11:37 +01:00
po doc: change fsf address 2016-01-21 12:11:37 +01:00
python python: add devmapper library to linking 2018-02-09 11:00:18 +01:00
report-generators doc: change fsf address 2016-01-21 12:11:37 +01:00
reports [REPORT-GENERATORS] cut down stylsheet.css to what we actually use 2010-07-21 10:00:38 +00:00
scripts fsadm: shellcheck prefer explicit escaping 2018-03-23 17:25:00 +01:00
spec spec: Enable notify-dbus in builds with dbus 2017-05-26 07:40:09 +02:00
test test: add lvcreate-raid-volume_list 2018-04-06 15:26:38 +02:00
tools coverity: ensure lock_type is not NULL 2018-03-17 23:33:58 +01:00
udev udev: keep systemd vars on change event in 69-dm-lvm-metad.rules for systemd reload 2018-04-17 11:38:12 +02:00
unit-tests doc: change fsf address 2016-01-21 12:11:37 +01:00
.gitignore lvmdbus: Add new daemon. 2016-02-17 23:53:35 +00:00
acinclude.m4 configure: just move new macro to right file 2016-12-13 22:49:59 +01:00
aclocal.m4 configure: just move new macro to right file 2016-12-13 22:49:59 +01:00
configure device: Basic config and setup to support async I/O. 2018-02-08 20:15:14 +00:00
configure.in device: Basic config and setup to support async I/O. 2018-02-08 20:15:14 +00:00
COPYING doc: change fsf address 2016-01-21 12:11:37 +01:00
COPYING.LIB Fix inconsistent licence notices: executables are GPLv2; libraries LGPLv2.1. 2007-08-20 20:55:30 +00:00
INSTALL quick review of docs 2008-11-04 17:49:22 +00:00
make.tmpl.in device: Basic config and setup to support async I/O. 2018-02-08 20:15:14 +00:00
Makefile.in man: Revise internal man page generation process. 2017-03-14 00:47:46 +00:00
README README: Include new github links 2017-09-13 20:20:04 +01:00
TESTING docs: Add TESTING file 2017-12-14 16:45:47 +01:00
VERSION post-release 2017-12-18 20:43:09 +00:00
VERSION_DM post-release 2017-12-18 20:43:09 +00:00
WHATS_NEW udev: keep systemd vars on change event in 69-dm-lvm-metad.rules for systemd reload 2018-04-17 11:38:12 +02:00
WHATS_NEW_DM libdm: enhance mounted fs detection 2018-03-23 17:24:58 +01:00

This tree contains the LVM2 and device-mapper tools and libraries.

For more information about LVM2 read the changelog in the WHATS_NEW file.
Installation instructions are in INSTALL.

There is no warranty - see COPYING and COPYING.LIB.

Tarballs are available from:
  ftp://sourceware.org/pub/lvm2/
  ftp://sources.redhat.com/pub/lvm2/
  https://github.com/lvmteam/lvm2/releases

The source code is stored in git:
  https://sourceware.org/git/?p=lvm2.git
  git clone git://sourceware.org/git/lvm2.git
mirrored to:
  https://github.com/lvmteam/lvm2
  git clone https://github.com/lvmteam/lvm2.git
  git clone git@github.com:lvmteam/lvm2.git

Mailing list for general discussion related to LVM2:
  linux-lvm@redhat.com
  Subscribe from https://www.redhat.com/mailman/listinfo/linux-lvm

Mailing lists for LVM2 development, patches and commits:
  lvm-devel@redhat.com
  Subscribe from https://www.redhat.com/mailman/listinfo/lvm-devel

  lvm2-commits@lists.fedorahosted.org (Read-only archive of commits)
  Subscribe from https://fedorahosted.org/mailman/listinfo/lvm2-commits

Mailing list for device-mapper development, including kernel patches
and multipath-tools:
  dm-devel@redhat.com
  Subscribe from https://www.redhat.com/mailman/listinfo/dm-devel

Website:
  https://sourceware.org/lvm2/

Report upstream bugs at:
  https://bugzilla.redhat.com/enter_bug.cgi?product=LVM%20and%20device-mapper
or open issues at:
  https://github.com/lvmteam/lvm2/issues

The source code repository used until 7th June 2012 is accessible here:
  http://sources.redhat.com/cgi-bin/cvsweb.cgi/LVM2/?cvsroot=lvm2.