All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v4 00/10] multipath-tools: provide pathname and abstract sockets
@ 2025-02-21 20:41 Martin Wilck
  2025-02-21 20:41 ` [PATCH v4 08/10] libmpathcmd: try both abstract and pathname sockets Martin Wilck
  2025-02-21 20:41 ` [PATCH v4 09/10] libmpathcmd: honor MULTIPATH_SOCKET_NAME environment variable Martin Wilck
  0 siblings, 2 replies; 6+ messages in thread
From: Martin Wilck @ 2025-02-21 20:41 UTC (permalink / raw)
  To: Christophe Varoqui, Benjamin Marzinski
  Cc: dm-devel, Martin Wilck, Alice Frosi, Paolo Bonzini

This set is an attempt to fix https://github.com/opensvc/multipath-tools/issues/111

Changes v3 -> v4:

- 08/10: retry independently of error condition (Ben Marzinski)
- 08/10: add a const qualifier
- 09/10: adapt to 08/10

Changes v2 -> v3:

Many, as a result of further discussions on GitHub. multipathd will now open
both the abstract socket and the pathname socket /run/multipathd.socket by
default, and client programs will try both sockets before giving up.  The
"use_regular_socket=1" build parameter is not necessary any more.

Note that we'd switched from the regular socket "/var/run/multipath.sock" to
an abstract socket in bb89077 ("multipathd: switch to abstract sockets for CLI
commands") in multipath-tools 0.5.0. The rationale back then was that creating
a pathname socket might fail if the directory structure isn't set up yet. As
we now create both, and fail only if neither could be created, and as there is
the early /run directory on modern systems, this argument shouldn't apply to
this patch set. The name of the socket has been changed in order to indicate
that the new approach is different from the old one.

Changes v1 -> v2:

- Introduced the mpath_fill_sockaddr() helper to cleanup struct sockaddr_un handling,
in response to comments from Ben Marzinski on GitHub.
- Fixed double remove of multipathd.socket during "make clean" (Ben).

Martin Wilck (10):
  multipath-tools: move DEFAULT_SOCKET definition into Makefile.inc
  multipath-tools: add helper mpath_fill_sockaddr__()
  libmpathutil: add support for Unix pathname sockets
  libmpathutil: move systemd_listen_fds() support into multipathd
  multipathd: make uxsock_listen() take a pointer to fd
  multipathd: allow receiving two socket fds from systemd
  multipathd: listen on pathname and abstract socket by default
  libmpathcmd: try both abstract and pathname sockets
  libmpathcmd: honor MULTIPATH_SOCKET_NAME environment variable
  multipathd: honor MULTIPATH_SOCKET_NAME environment variable

 .gitignore                                    |  1 +
 Makefile.inc                                  | 10 +++-
 create-config.mk                              |  1 +
 libmpathcmd/mpath_cmd.c                       | 25 ++++++----
 libmpathcmd/mpath_cmd.h                       |  1 -
 libmpathcmd/mpath_fill_sockaddr.c             | 32 +++++++++++++
 libmpathutil/uxsock.c                         | 41 +++++++---------
 libmultipath/defaults.h                       |  1 -
 multipathd/Makefile                           |  4 +-
 multipathd/main.c                             | 48 +++++++++++++++++--
 ...multipathd.socket => multipathd.socket.in} |  3 +-
 multipathd/uxlsnr.c                           | 34 +++++++++----
 multipathd/uxlsnr.h                           |  3 +-
 13 files changed, 149 insertions(+), 55 deletions(-)
 create mode 100644 libmpathcmd/mpath_fill_sockaddr.c
 rename multipathd/{multipathd.socket => multipathd.socket.in} (84%)

-- 
2.48.1


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2025-02-24 21:49 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-02-21 20:41 [PATCH v4 00/10] multipath-tools: provide pathname and abstract sockets Martin Wilck
2025-02-21 20:41 ` [PATCH v4 08/10] libmpathcmd: try both abstract and pathname sockets Martin Wilck
2025-02-24 17:32   ` Benjamin Marzinski
2025-02-21 20:41 ` [PATCH v4 09/10] libmpathcmd: honor MULTIPATH_SOCKET_NAME environment variable Martin Wilck
2025-02-24 17:35   ` Benjamin Marzinski
2025-02-24 21:49     ` Martin Wilck

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.