Dave Chinner
b870553cde
xfs: fix stray dquot unlock when reclaiming dquots
...
When we fail to get a dquot lock during reclaim, we jump to an error
handler that unlocks the dquot. This is wrong as we didn't lock the
dquot, and unlocking it means who-ever is holding the lock has had
it silently taken away, and hence it results in a lock imbalance.
Found by inspection while modifying the code for the numa-lru
patchset. This fixes a random hang I've been seeing on xfstest 232
for the past several months.
cc: <stable@vger.kernel.org>
Signed-off-by: Dave Chinner <dchinner@redhat.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Ben Myers <bpm@sgi.com>
2012-11-29 14:24:03 -06:00
..
2012-11-19 20:11:24 -06:00
2012-05-29 23:28:32 -04:00
2012-05-29 23:28:32 -04:00
2012-11-14 15:15:08 -06:00
2012-11-19 20:11:24 -06:00
2012-09-18 01:01:35 -07:00
2012-11-15 21:35:12 -06:00
2012-11-15 21:35:12 -06:00
2012-11-15 21:35:12 -06:00
2012-11-15 21:35:12 -06:00
2012-11-15 21:35:12 -06:00
2012-11-29 14:22:56 -06:00
2012-07-22 11:00:55 -05:00
2012-11-15 21:35:12 -06:00
2012-11-15 21:35:12 -06:00
2012-11-15 21:34:55 -06:00
2012-11-15 21:35:12 -06:00
2012-11-15 21:35:12 -06:00
2012-11-15 21:35:12 -06:00
2012-10-18 17:42:48 -05:00
2012-11-15 21:35:12 -06:00
2012-11-15 21:35:12 -06:00
2012-11-07 15:26:53 -06:00
2012-07-01 14:50:06 -05:00
2012-11-15 21:35:12 -06:00
2012-11-15 21:35:12 -06:00
2012-11-19 20:11:24 -06:00
2012-11-15 21:35:12 -06:00
2012-11-15 21:35:12 -06:00
2012-11-14 15:15:08 -06:00
2012-06-14 12:28:26 -05:00
2012-11-15 21:35:12 -06:00
2012-11-15 21:35:12 -06:00
2012-11-15 21:35:12 -06:00
2012-11-15 21:35:12 -06:00
2012-11-15 21:35:12 -06:00
2012-07-01 14:50:07 -05:00
2012-07-01 14:50:07 -05:00
2012-08-23 14:48:44 -05:00
2012-05-14 16:21:00 -05:00
2012-11-15 21:35:12 -06:00
2012-11-15 21:35:12 -06:00
2012-05-14 16:20:54 -05:00
2012-10-17 13:42:25 -05:00
2012-05-14 16:21:04 -05:00
2012-05-14 16:21:04 -05:00
2012-05-14 16:20:54 -05:00
2012-11-29 14:21:46 -06:00
2012-11-08 15:32:29 -06:00
2012-11-15 21:35:12 -06:00
2012-11-08 15:34:59 -06:00
2012-11-15 21:35:12 -06:00
2012-11-15 21:35:12 -06:00
2012-11-26 16:01:31 -06:00
2012-11-15 21:35:12 -06:00
2012-11-08 15:34:59 -06:00
2012-11-08 15:34:59 -06:00
2012-06-21 14:20:06 -05:00
2012-05-14 16:20:33 -05:00
2012-11-15 21:35:12 -06:00
2012-11-15 21:35:12 -06:00
2012-05-14 16:20:54 -05:00
2012-07-31 09:45:48 +04:00
2012-11-08 15:29:14 -06:00
2012-11-08 14:20:44 -06:00
2012-11-14 15:12:45 -06:00
2012-11-15 21:35:12 -06:00
2012-11-19 20:11:24 -06:00
2012-06-21 14:21:11 -05:00
2012-11-19 20:18:41 -06:00
2012-11-19 20:18:41 -06:00
2012-11-29 14:22:56 -06:00
2012-10-17 13:39:14 -05:00
2012-05-14 16:20:54 -05:00
2012-11-15 21:35:12 -06:00
2012-11-15 21:35:12 -06:00
2012-05-14 16:21:00 -05:00
2012-11-08 15:20:38 -06:00
2012-11-29 14:24:03 -06:00
2012-03-14 12:06:32 -05:00
2012-03-14 11:09:06 -05:00
2012-02-03 11:32:20 -06:00
2012-09-18 01:01:39 -07:00
2012-05-14 16:20:54 -05:00
2012-11-15 21:34:05 -06:00
2012-11-19 20:11:24 -06:00
2012-03-14 11:09:06 -05:00
2012-03-14 11:09:06 -05:00
2012-11-08 15:34:59 -06:00
2012-10-17 12:01:25 -05:00
2012-11-08 15:34:59 -06:00
2012-11-08 15:34:59 -06:00
2012-05-14 16:21:00 -05:00
2012-11-13 14:47:00 -06:00
2012-07-29 16:27:57 -05:00
2012-11-15 21:35:12 -06:00
2012-09-18 01:01:40 -07:00
2012-05-14 16:20:54 -05:00
2012-05-14 16:21:00 -05:00
2012-07-29 16:27:57 -05:00
2012-07-31 09:45:48 +04:00
2012-11-15 21:35:12 -06:00
2012-07-01 14:50:04 -05:00
2012-07-29 16:00:31 -05:00
2012-03-15 13:40:16 -05:00
2012-11-29 14:21:46 -06:00
2012-11-29 14:21:46 -06:00