[dm-devel] [PATCH 00/30] SLES resync, second try

Christophe Varoqui christophe.varoqui at gmail.com
Tue Jul 16 20:21:04 UTC 2013


On mar., 2013-07-16 at 09:12 +0200, Hannes Reinecke wrote:
> Hi Christophe,
> 
I applied the patchset.

The following patch I had to apply out of order because git am refused
to accept them:

18/30
25/30
28/30

Impressive work implementing udev and devloss_tmo subtelties.

Best regards,
Christophe Varoqui

> here as some patches which accumulated in my SLES repository.
> Most are plain bugfixes, but there are some nasty issues fixed
> with this:
> - The conversion to libudev was a bit overzealous; originally
>   we'd be skipping all devices which don't have a SCSI ID.
>   With libudev we'd be including even those, making multipath
>   claiming even USB flash disks 
>   So I've implemented a new 'property' blacklist which will
>   allow us to blacklist devices based on the udev property.
> - dev_loss_tmo setting continues to be tricky, but this time
>   I think we've got it sorted
> - When using libudev to read attribute variables we'd be getting
>   an automated caching from libudev. Which is nice, unless the
>   data changed in between. So I'd have to go back an roll our
>   own accessors, skipping libudev here.
> - Ripping out 'getuid_callout' rendered all old configuration
>   files still using in unworkable. So I've re-introduced it by
>   marked it 'obsolete'.
> - The confusion regarding directly reading from udev has been
>   cleared up; I've added another patch for reading the 'state'
>   attribute directly, too.
> 
> As usual, comments etc are welcome.
> 
> The patchset can also be pulled from
> git://github.com/hreinecke/multipath-tools.git
> branch sles-resync
> 
> Hannes Reinecke (28):
>   multipath: bind lifetime of udev context to main thread
>   Document 'infinity' as possible value for dev_loss_tmo
>   alua: Do not add preferred path priority for active/optimized
>   multipath: Increase dev_loss_tmo prior to fast_io_fail
>   libmultipath: return PATH_DOWN for quiesced paths
>   libmultipath: Implement PATH_TIMEOUT
>   Deprecate pg_timeout
>   kpartx: create correct symlinks for PATH_FAILED events
>   multipath: Deprecate 'getuid' configuration variable
>   multipath: Add 'Datacore Virtual Disk' to internal hardware table
>   Minor fixes for priority handling
>   Check return value from pathinfo()
>   Read directly from sysfs when checking the device size
>   multipath.conf.annotated: Document rr_min_io_rq
>   Correctly print out 'max' for max_fds
>   Correctly set max_fds in case of failure
>   Update multipath.conf.defaults
>   Correctly set pgfailback
>   multipath.conf.5: clarify 'no_path_retry' default setting
>   multipath.conf.annotated: remove 'udev_dir'
>   multipath: Implement 'property' blacklist
>   Do not print error when rport is blocked
>   multipath: reference the udev context when starting event queue
>   multipathd: valgrind fixes
>   multipathd: increase stacksize for uevent listener
>   Specify checker_timeout in seconds
>   multipath: reset queue_if_no_path if flush failed
>   libmultipath: read path state directly from sysfs
> 
> Petr Uzel (2):
>   kpartx: support disk with non-512B sectors
>   multipath: fix setting of fast_io_fail_tmo
> 
>  kpartx/dos.c                         |  17 +--
>  kpartx/gpt.c                         |  20 +---
>  kpartx/kpartx.c                      |  12 ++
>  kpartx/kpartx.h                      |   8 ++
>  kpartx/kpartx.rules                  |  18 ++-
>  libmpathpersist/mpath_persist.c      |   7 +-
>  libmpathpersist/mpath_persist.h      |   2 +-
>  libmpathpersist/mpath_pr_ioctl.c     |   5 +-
>  libmultipath/Makefile                |   2 +-
>  libmultipath/blacklist.c             | 105 +++++++++++++----
>  libmultipath/blacklist.h             |  19 +--
>  libmultipath/callout.c               | 216 +++++++++++++++++++++++++++++++++++
>  libmultipath/callout.h               |   7 ++
>  libmultipath/checkers.c              |   3 +-
>  libmultipath/checkers.h              |   5 +
>  libmultipath/checkers/emc_clariion.c |   2 +-
>  libmultipath/checkers/hp_sw.c        |   4 +-
>  libmultipath/checkers/libsg.c        |   2 +-
>  libmultipath/checkers/rdac.c         |   4 +-
>  libmultipath/checkers/tur.c          |   4 +-
>  libmultipath/config.c                |  44 +++++--
>  libmultipath/config.h                |  10 +-
>  libmultipath/configure.c             |  25 ++--
>  libmultipath/devmapper.c             |  31 ++---
>  libmultipath/devmapper.h             |   3 +-
>  libmultipath/dict.c                  | 195 +++++++++++++++++--------------
>  libmultipath/discovery.c             | 174 +++++++++++++++++++++-------
>  libmultipath/discovery.h             |   2 +-
>  libmultipath/hwtable.c               |  13 +++
>  libmultipath/print.c                 |  35 ++++++
>  libmultipath/prioritizers/alua.c     |   2 +-
>  libmultipath/propsel.c               |  57 +++------
>  libmultipath/propsel.h               |   1 -
>  libmultipath/structs.h               |   2 +-
>  libmultipath/structs_vec.c           |   2 +-
>  libmultipath/sysfs.c                 |  86 +++++++++++---
>  libmultipath/sysfs.h                 |   2 +
>  libmultipath/uevent.c                |  16 ++-
>  libmultipath/uevent.h                |   4 +-
>  mpathpersist/main.c                  |  11 +-
>  multipath.conf.annotated             |  40 +++++--
>  multipath.conf.defaults              | 112 ++++++++++--------
>  multipath/main.c                     |  27 +++--
>  multipath/multipath.conf.5           |  27 ++++-
>  multipathd/main.c                    |  19 ++-
>  45 files changed, 1009 insertions(+), 393 deletions(-)
>  create mode 100644 libmultipath/callout.c
>  create mode 100644 libmultipath/callout.h
> 





More information about the dm-devel mailing list