Why do we have an unaligned srwlock test?
That's because we know at least one game which messes up SRWLock / condvars alignment and depends on those to really work (without spurious / perpetuum wakeups). That works on Windows but futexes give error on aligned address, so there is a realignment. I guess that is supposed to still work after redesign?
Specifically, the application was Detroit: Become Human, though Beyond: Two Souls may also have been affected. See https://bugs.winehq.org/show_bug.cgi?id=48389.
I believe that that application only used unaligned condition variables; I tested SRW locks at the same time because they were similarly embedding a futex in the lock pointer. I don't think we know for sure that any application uses unaligned SRW locks.