[PATCH v3 0/2] regmap: Fix cache lifecycle locking and teardown

From: Michael Reeves via B4 Relay

Date: Tue Oct 06 2026 - 03:03:31 EST


Fix an "Invalid wait context" lockdep warning during Apple GPIO probe and
correct debugfs ordering during cache teardown.

Tested on Apple M3 MacBook Air (T8122):

- All 4 GPIO controllers probe successfully with lockdep enabled.
- The "Invalid wait context" warning no longer occurs.
- The regmap KUnit suite passes and lockdep remains enabled.

---
Changes in v3:
- Link to v2: https://lore.kernel.org/r/20261004-regcache-lifecycle-submit-v2-0-976d405e89a7@xxxxxxxxx
- Add Maple-state irqsave and irqrestore helpers.
- Use the helpers for cache teardown and document why IRQ safety is needed.
- Rebase onto the latest upstream tree.

Changes in v2:
- Link to v1: https://lore.kernel.org/r/20260925-regcache-lifecycle-submit-v1-1-83b75ca79d96@xxxxxxxxx
- Make Maple cache teardown IRQ-safe.
- Fix debugfs ordering during cache teardown and reinitialization.
- Rebase onto the latest upstream tree.

---
Michael Reeves (2):
regmap: Remove debugfs before cache teardown
regmap: Drop map lock during cache init and exit

drivers/base/regmap/regcache-maple.c | 9 +++++++--
drivers/base/regmap/regcache.c | 6 ------
drivers/base/regmap/regmap-debugfs.c | 1 +
drivers/base/regmap/regmap.c | 15 +++++++++------
include/linux/maple_tree.h | 4 ++++
5 files changed, 21 insertions(+), 14 deletions(-)
---
base-commit: 2c3418fffa9d037b2038a6db48be63f9e2291806
change-id: 20260925-regcache-lifecycle-submit-74f366be0fbc

Best regards,
--
Michael Reeves <michael.reeves077@xxxxxxxxx>