Simplify how the kmod dups code informs duplicate requests about the
result, fix a potential use-after-free when waiting on a duplicate request,
and make several general improvements to the code.
Note that the use-after-free fix depends on the code simplification
implemented in the first patch.
---
Changes in v2:
- Fix handling of concurrent request_module_nowait() and request_module()
calls.
- Avoid unnecessary kmod_dup_req allocations.
- Avoid mixing goto with scope-based cleanup.
- Link to v1: https://patch.msgid.link/20260720121621.750661-1-petr.pavlu@suse.com
---
Petr Pavlu (6):
module/dups: Inform duplicate requests about the result directly
module/dups: Fix use-after-free in kmod_dup_req lifetime handling
module/dups: Avoid unnecessary kmod_dup_req allocations
module/dups: Use scope-based cleanup helpers
module/dups: Use strcmp() to compare module names
module/dups: Clean up includes
kernel/module/dups.c | 169 +++++++++++++++++++++++----------------------------
1 file changed, 77 insertions(+), 92 deletions(-)
---
base-commit: a13c140cc289c0b7b3770bce5b3ad42ab35074aa
change-id: 20260722-module-stats-rcu-ff0dfc986be6