From: Waiman Long > Sent: 07 December 2020 19:02 ... > > How much more difficult would it be to also add a timeout option? > > I looked at adding one to the mutex code - and fell into a big pile > > of replicated code. > > > > ISTM that one the initial locked exchange (and spin) fails a few > > extra instructions when heading for the sleep don't really matter > > > Actually, I had tried that before. See > > https://lore.kernel.org/lkml/20190911150537.19527-1-long...@redhat.com/ > > That is for rwsem, but the same can be done for mutex. However, Peter > didn't seem to like the idea of a timeout parameter. Anyway, it is > certainly doable if there is a good use case for it.
'Unfortunately' my use-case if for an out-of-tree driver. The problem I was solving is a status call blocking because some other code is 'stuck' (probably an oops) with a mutex held. The code used to use down_timeout() (it was written for 2.4). When I changed to mutex_(to get optimistic spinning) I lost the ability to do the timeouts. David - Registered Address Lakeside, Bramley Road, Mount Farm, Milton Keynes, MK1 1PT, UK Registration No: 1397386 (Wales)