Linux block layer
 help / color / mirror / Atom feed
* [PATCH 00/12] drbd: Enable lock context analysis
@ 2026-07-09 21:35 Bart Van Assche
  2026-07-09 21:35 ` [PATCH 01/12] drbd: Remove "extern" from function declarations Bart Van Assche
                   ` (11 more replies)
  0 siblings, 12 replies; 13+ messages in thread
From: Bart Van Assche @ 2026-07-09 21:35 UTC (permalink / raw)
  To: Jens Axboe
  Cc: linux-block, Christoph Hellwig, Marco Elver,
	Cc : Christoph Böhmwalder, Bart Van Assche

Hi Jens,

This patch series enables compile-time lock context analysis for DRBD. The goal
of this series is to allow the compiler to statically verify that locks are
acquired and released correctly, helping to prevent deadlocks and race
conditions. This version addresses feedback received on the v1 series, improves
the annotations, and refactors some conditional locking paths to use the modern
cleanup.h guard infrastructure.

Changes since v1:
- Extracted the DRBD patches from a larger series. See also
  "[PATCH 00/27] Enable lock context analysis in drivers/block/"
  (https://lore.kernel.org/all/cover.1781042470.git.bvanassche@acm.org/).
- Fixed the indentation of the arguments of
  drbd_nl_put_dump_connections_result().
- Combined the two drbd_req_state() patches into a single patch.

Please consider these patches for the next merge window.

Thanks,

Bart.

Bart Van Assche (12):
  drbd: Remove "extern" from function declarations
  drbd: Retain one _get_ldev_if_state() implementation
  drbd: Remove the get_ldev_if_state() macro
  drbd: Remove the 'local' lock context
  drbd: Simplify the bitmap locking functions.
  drbd: Move two declarations
  drbd: Pass 'resource' directly to complete_conflicting_writes()
  drbd: Split drbd_nl_get_connections_dumpit()
  drbd: Make a mutex_unlock() call unconditional
  drbd: Rework locking in drbd_req_state()
  drbd: Annotate drbd_bm_{lock,unlock}()
  drbd: Enable lock context analysis

 drivers/block/drbd/Makefile            |   3 +
 drivers/block/drbd/drbd_bitmap.c       |  43 +-
 drivers/block/drbd/drbd_config.h       |   2 +-
 drivers/block/drbd/drbd_int.h          | 594 +++++++++++++------------
 drivers/block/drbd/drbd_interval.h     |  11 +-
 drivers/block/drbd/drbd_main.c         |  41 +-
 drivers/block/drbd/drbd_nl.c           | 117 ++---
 drivers/block/drbd/drbd_receiver.c     |  27 +-
 drivers/block/drbd/drbd_req.c          |  10 +-
 drivers/block/drbd/drbd_req.h          |  24 +-
 drivers/block/drbd/drbd_state.c        |  49 +-
 drivers/block/drbd/drbd_state.h        |  35 +-
 drivers/block/drbd/drbd_state_change.h |  32 +-
 drivers/block/drbd/drbd_worker.c       |   6 +-
 14 files changed, 508 insertions(+), 486 deletions(-)


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

end of thread, other threads:[~2026-07-09 21:36 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-07-09 21:35 [PATCH 00/12] drbd: Enable lock context analysis Bart Van Assche
2026-07-09 21:35 ` [PATCH 01/12] drbd: Remove "extern" from function declarations Bart Van Assche
2026-07-09 21:35 ` [PATCH 02/12] drbd: Retain one _get_ldev_if_state() implementation Bart Van Assche
2026-07-09 21:35 ` [PATCH 03/12] drbd: Remove the get_ldev_if_state() macro Bart Van Assche
2026-07-09 21:35 ` [PATCH 04/12] drbd: Remove the 'local' lock context Bart Van Assche
2026-07-09 21:35 ` [PATCH 05/12] drbd: Simplify the bitmap locking functions Bart Van Assche
2026-07-09 21:35 ` [PATCH 06/12] drbd: Move two declarations Bart Van Assche
2026-07-09 21:35 ` [PATCH 07/12] drbd: Pass 'resource' directly to complete_conflicting_writes() Bart Van Assche
2026-07-09 21:35 ` [PATCH 08/12] drbd: Split drbd_nl_get_connections_dumpit() Bart Van Assche
2026-07-09 21:35 ` [PATCH 09/12] drbd: Make a mutex_unlock() call unconditional Bart Van Assche
2026-07-09 21:35 ` [PATCH 10/12] drbd: Rework locking in drbd_req_state() Bart Van Assche
2026-07-09 21:35 ` [PATCH 11/12] drbd: Annotate drbd_bm_{lock,unlock}() Bart Van Assche
2026-07-09 21:35 ` [PATCH 12/12] drbd: Enable lock context analysis Bart Van Assche

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox