<div dir="ltr">Hi Martin,<div><br></div><div>pending patches, except the logging refactoring patchset, are merged.</div><div>When you'll be ready to send the v3 of this patchset, please send the full set : some of the reviewed v1 patches are missing in my mailbox.</div><div><br></div><div>Thanks,</div><div>Christophe</div></div><br><div class="gmail_quote"><div dir="ltr">On Tue, Dec 4, 2018 at 12:50 AM Benjamin Marzinski <<a href="mailto:bmarzins@redhat.com">bmarzins@redhat.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On Mon, Dec 03, 2018 at 08:36:18PM +0100, Martin Wilck wrote:<br>
> Hi Christophe,<br>
> <br>
> most of the patches in this series reduce log levels of frequently<br>
> printed messages at verbosity level 3. My goal was to limit the<br>
> output of multipathd to one line per path per checker invocation,<br>
> which is sufficient to track multipathd's view of path health in<br>
> the logs.<br>
> <br>
> The standard setting of -v2 is not enough for post-mortem analysis of many<br>
> failures. With this series, running multipathd with verbosity 3 becomes a<br>
> realistic option even in production environments. So far the amount of output<br>
> from multipathd with -v3 pretty much made this impossible, at least over<br>
> longer time periods, and also made reading these logs very cumbersome due to<br>
> the amount of redundant partly superfluos verbosity. I've taken care not<br>
> to loose important information in the logs.<br>
> <br>
> Apart from that, the series fixes errors in the unit tests introduced by my<br>
> last "checker overhaul" patch series (proving that I forgot to run the<br>
> tests before submitting :-( ), and fixes a problem that I found while testing<br>
> handling of a bad configuration (paths with size mismatch).<br>
> <br>
> Regards,<br>
> Martin<br>
> <br>
> Changes in v2:<br>
> <br>
> The first 19 patches are identical to v1 as ACK'd by Ben, except 16/24<br>
> "libmultipath: coalesce_paths: fix size mismatch handling".<br>
> No. 8/24 "libmultipath: decrease log level of word splitting"<br>
> (not yet ACKd by Ben) also stays the same; the issue Ben raised<br>
> in his review is addressed in a separate patch, 20/24.<br>
> 21/24 addresses implements Ben's suggestion to use named constants<br>
> as return values in coalesce_paths(). 22, 23, 24 do the same for<br>
> other important, related functions, as I found it strange to make<br>
> this change just for coalesce_paths() alone.  <br>
<br>
Thanks<br>
<br>
ACK for everything except 23/24<br>
<br>
-Ben<br>
<br>
> <br>
> Martin Wilck (24):<br>
>   tests/hwtable: set multipath_dir in local configuration<br>
>   tests/hwtable: adjust to new checker API<br>
>   multipath-tools: decrease verbosity of state messages<br>
>   libmultipath: decrease verbosity of pathinfo messages<br>
>   libmultipath: decrease verbosity of TUR checker messages<br>
>   libmultipath: avoid frequent messages from filter_property()<br>
>   libmultipath: decrease log level of "disassembled" messages<br>
>   libmultipath: decrease log level of word splitting<br>
>   libmultipath: increase log level of map removal<br>
>   multipathd: decrease log level of checker timing<br>
>   libmultipath: decrease log level of "prioritizer refcount" message<br>
>   libmpathpersist/update_map_pr: decrease log level for nop<br>
>   libmultipath: simplify devt2devname()<br>
>   libmultipath: decrease log level for failed VPD c9<br>
>   libmultipath: adopt_paths: check for size match<br>
>   libmultipath: coalesce_paths: fix size mismatch handling<br>
>   tests: add unit tests for bitmask functions<br>
>   multipathd: uev_remove_path: remove redundant orphan_paths call<br>
>   libmultipath: improve logging from orphan_paths<br>
>   libmultipath: avoid syslog loglevel > LOG_DEBUG<br>
>   coalesce_paths(): use symbolic return value<br>
>   domap(): use symbolic return value<br>
>   domap(): never return DOMAP_RETRY in daemon mode<br>
>   multipath: use symbolic return value and exit code<br>
> <br>
>  libmpathpersist/mpath_persist.c |   3 +-<br>
>  libmultipath/blacklist.c        |  54 +++++++-------<br>
>  libmultipath/blacklist.h        |   2 +-<br>
>  libmultipath/checkers/tur.c     |   6 +-<br>
>  libmultipath/configure.c        |  68 +++++++++---------<br>
>  libmultipath/configure.h        |  23 ++++++<br>
>  libmultipath/discovery.c        |  20 +++---<br>
>  libmultipath/dmparser.c         |   6 +-<br>
>  libmultipath/log_pthread.c      |   3 +<br>
>  libmultipath/prio.c             |   2 +-<br>
>  libmultipath/structs_vec.c      |  18 +++--<br>
>  libmultipath/structs_vec.h      |   3 +-<br>
>  libmultipath/util.c             |   7 +-<br>
>  libmultipath/util.h             |  16 +++++<br>
>  multipath/main.c                | 121 ++++++++++++++++++--------------<br>
>  multipathd/cli_handlers.c       |   5 +-<br>
>  multipathd/main.c               |  39 +++++-----<br>
>  tests/Makefile                  |   7 +-<br>
>  tests/blacklist.c               |   7 +-<br>
>  tests/hwtable.c                 |  89 ++++++++++++-----------<br>
>  tests/util.c                    |  98 ++++++++++++++++++++++++++<br>
>  21 files changed, 386 insertions(+), 211 deletions(-)<br>
> <br>
> -- <br>
> 2.19.1<br>
</blockquote></div>