On Fri, Jun 17, 2022 at 10:29:20AM -0400, Waiman Long wrote:
FWIW, the patch passed the test case when applied to both 5.18 andThe C file and shell script to run it are attached.Thanks for the reproducer and I will try to reproduce it locally.
It is a known issue that I have receive similar report from an Oracle
engineer. That is the reason I posted commit 1ee326196c66 ("locking/rwsem:
Always try to wake waiters in out_nolock path") that was merged in v5.19. I
believe it helps but it may not be able to eliminate all possible race
conditions. To make rwsem behave more like before commit d257cc8cb8d5
("locking/rwsem: Make handoff bit handling more consistent"), I posted a
follow-up patch
https://lore.kernel.org/lkml/20220427173124.1428050-1-longman@xxxxxxxxxx/
But it hasn't gotten review yet.
5.19-rc3.