linux-raid.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/9] Mdmonitor refactor and udev event handling improvements
@ 2022-09-07 12:56 Mateusz Grzonka
  2022-09-07 12:56 ` [PATCH 1/9] Mdmonitor: Split alert() into separate functions Mateusz Grzonka
                   ` (9 more replies)
  0 siblings, 10 replies; 24+ messages in thread
From: Mateusz Grzonka @ 2022-09-07 12:56 UTC (permalink / raw)
  To: linux-raid; +Cc: jes

Along the way we observed many problems with current approach to event handling in mdmonitor.
It frequently doesn't report Fail and DeviceDisappeared events.
It's due to time races with udev, and too long delay in some cases.
While there was a patch intending to address time races with udev, it didn't remove them completely.
This patch series presents alternative approach, where mdmonitor wakes up on udev events, so that
there should be no more conflicts with udev we saw before.

Additionally some code quality improvements were done, to make the code more maintainable.

Mateusz Grzonka (9):
  Mdmonitor: Split alert() into separate functions
  Mdmonitor: Make alert_info global
  Mdmonitor: Pass events to alert() using enums instead of strings
  Mdmonitor: Add helper functions
  Add helpers to determine whether directories or files are soft links
  Mdmonitor: Refactor write_autorebuild_pid()
  Mdmonitor: Refactor check_one_sharer() for better error handling
  Mdmonitor: Improve udev event handling
  udev: Move udev_block() and udev_unblock() into udev.c

 Create.c  |   1 +
 Makefile  |   3 +-
 Manage.c  |   3 +-
 Monitor.c | 707 ++++++++++++++++++++++++++++++++----------------------
 lib.c     |  42 ----
 mdadm.h   |   6 +-
 mdopen.c  |  19 +-
 udev.c    | 191 +++++++++++++++
 udev.h    |  38 +++
 util.c    |  46 ++++
 10 files changed, 713 insertions(+), 343 deletions(-)
 create mode 100644 udev.c
 create mode 100644 udev.h

-- 
2.26.2


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

end of thread, other threads:[~2023-01-19 13:58 UTC | newest]

Thread overview: 24+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-09-07 12:56 [PATCH 0/9] Mdmonitor refactor and udev event handling improvements Mateusz Grzonka
2022-09-07 12:56 ` [PATCH 1/9] Mdmonitor: Split alert() into separate functions Mateusz Grzonka
2022-10-28 15:44   ` Coly Li
2022-12-28 14:48   ` Jes Sorensen
2022-09-07 12:56 ` [PATCH 2/9] Mdmonitor: Make alert_info global Mateusz Grzonka
2022-10-28 15:44   ` Coly Li
2022-12-28 14:49   ` Jes Sorensen
2023-01-19 13:57     ` Grzonka, Mateusz
2022-09-07 12:56 ` [PATCH 3/9] Mdmonitor: Pass events to alert() using enums instead of strings Mateusz Grzonka
2022-10-28 15:45   ` Coly Li
2022-09-07 12:56 ` [PATCH 4/9] Mdmonitor: Add helper functions Mateusz Grzonka
2022-10-28 15:45   ` Coly Li
2022-09-07 12:56 ` [PATCH 5/9] Add helpers to determine whether directories or files are soft links Mateusz Grzonka
2022-10-28 15:46   ` Coly Li
2022-09-07 12:56 ` [PATCH 6/9] Mdmonitor: Refactor write_autorebuild_pid() Mateusz Grzonka
2022-10-28 15:47   ` Coly Li
2022-09-07 12:56 ` [PATCH 7/9] Mdmonitor: Refactor check_one_sharer() for better error handling Mateusz Grzonka
2022-10-28 15:47   ` Coly Li
2022-09-07 12:56 ` [PATCH 8/9] Mdmonitor: Improve udev event handling Mateusz Grzonka
2022-10-28 15:47   ` Coly Li
2022-09-07 12:56 ` [PATCH 9/9] udev: Move udev_block() and udev_unblock() into udev.c Mateusz Grzonka
2022-09-07 13:21   ` Paul Menzel
2022-10-28 15:47   ` Coly Li
2022-10-28 15:42 ` [PATCH 0/9] Mdmonitor refactor and udev event handling improvements Coly Li

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).