diff options
| author | Christian Brauner <brauner@kernel.org> | 2025-09-05 15:51:29 +0200 |
|---|---|---|
| committer | Christian Brauner <brauner@kernel.org> | 2025-09-05 15:51:29 +0200 |
| commit | e493b83b10af01631948d921f02d4ca8577b5051 (patch) | |
| tree | a85eacd701f6a240be1f945c9031236916d1d673 /scripts/gdb/linux/mm.py | |
| parent | 46582a15c1742ff0dd9d2faffd62672a79603a42 (diff) | |
| parent | 0c43094f8cc9d3d99d835c0ac9c4fe1ccc62babd (diff) | |
Merge patch "eventpoll: Fix priority inversion problem"
Nam Cao <namcao@linutronix.de> says:
Hi,
This v4 is the follow-up to v3 at:
https://lore.kernel.org/linux-fsdevel/20250527090836.1290532-1-namcao@linutronix.de/
which resolves a priority inversion problem.
The v3 patch was merged, but then got reverted due to regression.
The direction of v3 was wrong in the first place. It changed the
eventpoll's event list to be lockless, making the code harder to read. I
stared at the patch again, but still couldn't figure out what the bug is.
The performance numbers were indeed impressive with lockless, but the
numbers are from a benchmark, which is unclear whether it really reflects
real workload.
This v4 takes a completely different approach: it converts the rwlock to
spinlock. Unfortunately, unlike rwlock, spinlock does not allow concurrent
readers. This patch therefore reduces the performance numbers.
I have some optimization tricks to reduce spinlock contention and bring the
numbers back. But Linus appeared and declared that epoll's performance
shouldn't be the priority. So I decided not to post those optimization
patches.
* patches from https://lore.kernel.org/cover.1752581388.git.namcao@linutronix.de:
eventpoll: Replace rwlock with spinlock
Link: https://lore.kernel.org/cover.1752581388.git.namcao@linutronix.de
Signed-off-by: Christian Brauner <brauner@kernel.org>
Diffstat (limited to 'scripts/gdb/linux/mm.py')
0 files changed, 0 insertions, 0 deletions
