diff options
| author | Matthew Wilcox (Oracle) <willy@infradead.org> | 2026-03-05 19:55:43 +0000 |
|---|---|---|
| committer | Peter Zijlstra <peterz@infradead.org> | 2026-03-08 11:06:52 +0100 |
| commit | 25500ba7e77ce9d3d9b5a1929d41a2ee2e23f6fe (patch) | |
| tree | e288e1e28cc98e4052ac617300be5b86f47f082c /scripts | |
| parent | b9bdd4b6840454ef87f61b6506c9635c57a81650 (diff) | |
locking/mutex: Remove the list_head from struct mutex
Instead of embedding a list_head in struct mutex, store a pointer to
the first waiter. The list of waiters remains a doubly linked list so
we can efficiently add to the tail of the list, remove from the front
(or middle) of the list.
Some of the list manipulation becomes more complicated, but it's a
reasonable tradeoff on the slow paths to shrink data structures which
embed a mutex like struct file.
Some of the debug checks have to be deleted because there's no equivalent
to checking them in the new scheme (eg an empty waiter->list now means
that it is the only waiter, not that the waiter is no longer on the list).
Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Link: https://patch.msgid.link/20260305195545.3707590-4-willy@infradead.org
Diffstat (limited to 'scripts')
0 files changed, 0 insertions, 0 deletions
