Messages in this thread | | | Date | Thu, 14 Jun 2018 06:29:05 -0700 | From | Matthew Wilcox <> | Subject | Re: [PATCH v2 1/2] locking: Implement an algorithm choice for Wound-Wait mutexes |
| |
On Thu, Jun 14, 2018 at 01:54:15PM +0200, Thomas Hellstrom wrote: > On 06/14/2018 01:36 PM, Peter Zijlstra wrote: > > Currently you don't allow mixing WD and WW contexts (which is not > > immediately obvious from the above code), and the above hard relies on > > that. Are there sensible use cases for mixing them? IOW will your > > current restriction stand without hassle? > > Contexts _must_ agree on the algorithm used to resolve deadlocks. With > Wait-Die, for example, older transactions will wait if a lock is held by a > younger transaction and with Wound-Wait, younger transactions will wait if a > lock is held by an older transaction so there is no way of mixing them.
Maybe the compiler should be enforcing that; ie make it a different type?
| |