[dm-devel] [PATCH v3 0/4] add library to check if device is a valid path

Benjamin Marzinski bmarzins at redhat.com
Wed Oct 21 21:39:22 UTC 2020


The main part of the this patchset is the first patch, which adds a
new library interface to check whether devices are valid paths. This
was designed for use in the Storage Instantiation Daemon (SID).

https://github.com/sid-project

The seconds patch adds unit tests for this library. The third patch adds
get_uid fallback code for dasd devices. The fourth patch just changes
the get_uid log level for devices configured with uid_attribute "". This
is because it is currently necessary to configure multipath with

overrides {
        uid_attribute ""
}

to claim multipath devices with SID (instead of using multipath.rules),
since SID doesn't currently get the UID information itself, and it is
called by udev before this information is added to the udev database.

changes from v1 to v2
---------------------
0001: This patch is now rebased on top of, and makes use of Martin's
patches that provide a default *_multipath_config, udev, and logsink.
Because of this, mpathvalid_init() now has a parameter used to set
logsink. There is also a new API function, mpathvalid_reload_config().

0003: This is completely new, since Martin pointed out that adding a new
config option to always use the fallback getuid code was unnecessary. It
just makes a uid_attribute of "" log at normal levels.

changes from v2 to v3
---------------------
0001:   rebased on top of Martin's latest patches, fixed some small bugs
        and added documentation to mpath_valid.h
0002:   New
0004:   was 0003. Untangled the logic, at Martin's suggestion.

Benjamin Marzinski (4):
  multipath: add libmpathvalid library
  multipath-tools tests: and unit tests for libmpathvalid
  libmultipath: add uid failback for dasd devices
  libmultipath: change log level for null uid_attribute

 Makefile                            |   3 +-
 Makefile.inc                        |   1 +
 libmpathvalid/Makefile              |  39 +++
 libmpathvalid/libmpathvalid.version |  10 +
 libmpathvalid/mpath_valid.c         | 202 ++++++++++++
 libmpathvalid/mpath_valid.h         | 155 +++++++++
 libmultipath/defaults.h             |   1 +
 libmultipath/discovery.c            |  45 ++-
 libmultipath/libmultipath.version   |   6 +
 tests/Makefile                      |   5 +-
 tests/mpathvalid.c                  | 467 ++++++++++++++++++++++++++++
 11 files changed, 929 insertions(+), 5 deletions(-)
 create mode 100644 libmpathvalid/Makefile
 create mode 100644 libmpathvalid/libmpathvalid.version
 create mode 100644 libmpathvalid/mpath_valid.c
 create mode 100644 libmpathvalid/mpath_valid.h
 create mode 100644 tests/mpathvalid.c

-- 
2.17.2




More information about the dm-devel mailing list