[dm-devel] [PATCH v2 0/9] speeding up mpathpersist
Martin Wilck
mwilck at suse.com
Mon May 27 12:59:33 UTC 2019
We've had reports that mpathpersist doesn't scale well in environments
with lots of IO devices. This patch set tries to address this problem
with a few optimizations:
- instead of doing a full path discovery at startup, only look at
paths that are part of the maps being worked on
- allow multiple PR commands in a single run using "batch files",
without re-discovering everything between PR commands
- avoid looking at priorities
I've done some basic testing and it seems to work. It remains to be
seen what the effect on performance really is, but the amount of system
calls to be performed for a given set of mpathpersist actions should
be substantially reduced in any case, especially when using batching.
---
v2:
- avoid memory leak with --batch-file (Ben Marzinski)
- add documentation to usage() output and mpathpersist man page
- integrate "mpathpersist.8: fix examples in man page" which I'd sent
separately before
Martin Wilck (9):
mpathpersist: call usage() just once on return
mpathpersist: add option --batch-file (-f)
mpathpersist: no need to treat error close() as fatal
libmpathpersist: updatepaths: deal with missing pp->udev
libmpathpersist: factor out initialization and teardown
mpathpersist: initialize data structures only once
libmpathpersist: don't bother with priorities
mpathpersist.8: fix examples in man page
mpathpersist.8: add documentation for --batch-file (-f)
libmpathpersist/mpath_persist.c | 250 +++++++++++++++-----------------
libmpathpersist/mpath_persist.h | 40 +++++
mpathpersist/main.c | 227 ++++++++++++++++++++++-------
mpathpersist/main.h | 1 +
mpathpersist/mpathpersist.8 | 121 ++++++++++++++--
5 files changed, 440 insertions(+), 199 deletions(-)
--
2.21.0
More information about the dm-devel
mailing list