Bob Peterson
44ad37d69b
GFS2: filesystem hang caused by incorrect lock order
...
This patch fixes a deadlock in GFS2 where two processes are trying
to reclaim an unlinked dinode:
One holds the inode glock and calls gfs2_lookup_by_inum trying to look
up the inode, which it can't, due to I_FREEING. The other has set
I_FREEING from vfs and is at the beginning of gfs2_delete_inode
waiting for the glock, which is held by the first. The solution is to
add a new non_block parameter to the gfs2_iget function that causes it
to return -ENOENT if the inode is being freed.
Signed-off-by: Bob Peterson <rpeterso@redhat.com>
Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
2011-04-18 15:23:50 +01:00
..
2011-04-15 15:26:14 -05:00
2011-03-31 11:26:23 -03:00
2011-03-24 10:16:26 -07:00
2011-03-31 11:26:23 -03:00
2011-03-31 11:26:23 -03:00
2011-03-31 11:26:23 -03:00
2011-03-24 10:16:26 -07:00
2011-04-07 11:14:49 -07:00
2011-03-31 11:26:23 -03:00
2011-04-07 11:14:49 -07:00
2011-04-12 14:19:55 +00:00
2011-03-25 17:45:16 -07:00
2011-03-31 11:26:23 -03:00
2011-01-13 08:03:23 -08:00
2011-02-18 08:07:18 -08:00
2011-03-22 17:44:17 -07:00
2011-03-31 11:26:23 -03:00
2011-03-31 11:26:23 -03:00
2011-03-10 08:52:07 +01:00
2011-03-31 11:26:23 -03:00
2011-03-15 02:21:44 -04:00
2011-03-31 11:26:23 -03:00
2011-04-08 07:35:17 -07:00
2011-04-11 15:45:47 -07:00
2011-03-24 10:16:26 -07:00
2011-03-31 11:26:23 -03:00
2011-01-14 09:23:36 -08:00
2011-03-31 11:26:23 -03:00
2011-04-18 15:23:50 +01:00
2011-03-24 10:16:26 -07:00
2011-03-24 10:16:26 -07:00
2011-01-12 20:03:42 -05:00
2011-03-24 10:16:26 -07:00
2011-03-22 17:44:02 -07:00
2011-03-24 10:16:26 -07:00
2011-03-31 11:26:23 -03:00
2011-04-11 15:45:47 -07:00
2011-03-31 11:26:23 -03:00
2011-03-31 11:26:23 -03:00
2011-01-25 15:24:47 -05:00
2011-03-31 11:26:23 -03:00
2011-03-24 10:16:26 -07:00
2011-03-31 11:26:23 -03:00
2011-04-12 14:17:24 -07:00
2011-03-31 11:26:23 -03:00
2011-04-11 15:45:17 -07:00
2011-04-05 23:51:48 +02:00
2011-04-07 11:14:49 -07:00
2011-03-31 11:26:23 -03:00
2011-03-31 11:26:23 -03:00
2011-03-24 10:16:26 -07:00
2011-04-14 16:06:54 -07:00
2011-03-31 11:26:23 -03:00
2011-03-31 11:26:23 -03:00
2011-03-10 08:52:07 +01:00
2011-04-08 07:35:17 -07:00
2011-04-14 16:06:56 -07:00
2011-03-31 11:26:23 -03:00
2011-03-31 11:26:23 -03:00
2011-01-20 17:02:05 -08:00
2011-03-24 10:16:26 -07:00
2011-04-13 11:59:09 +03:00
2011-03-24 10:16:26 -07:00
2011-04-07 11:14:49 -07:00
2011-04-11 15:48:57 -07:00
2011-03-24 10:16:26 -07:00
2011-01-16 13:47:07 -05:00
2011-03-31 11:26:23 -03:00
2011-04-14 16:06:55 -07:00
2011-03-31 11:26:23 -03:00
2011-03-17 11:11:05 +01:00
2011-03-31 11:26:23 -03:00
2011-03-31 11:26:23 -03:00
2011-03-24 19:01:30 -07:00
2011-01-13 10:45:01 -08:00
2011-03-21 00:16:08 -04:00
2011-04-15 07:34:26 -07:00
2011-03-24 10:16:26 -07:00
2011-03-24 21:16:32 -04:00
2011-02-21 15:07:04 -08:00
2011-03-31 11:26:23 -03:00
2011-03-21 00:16:09 -04:00
2011-03-23 19:47:13 -07:00
2011-04-14 16:06:56 -07:00
2011-03-21 00:16:09 -04:00
2011-03-16 13:26:17 -07:00
2011-04-17 10:42:01 -07:00
2011-01-16 13:47:07 -05:00
2011-03-31 11:26:23 -03:00
2011-03-23 19:47:13 -07:00
2011-04-05 23:51:48 +02:00
2011-03-24 21:17:51 -04:00
2011-03-21 00:16:08 -04:00
2011-03-16 19:01:29 -07:00
2011-01-12 20:03:43 -05:00
2011-03-24 08:20:39 -07:00
2011-03-16 19:01:29 -07:00
2011-03-31 11:26:23 -03:00
2011-03-10 08:52:26 +01:00
2011-04-15 15:28:12 -07:00
2011-04-12 13:35:56 -07:00
2011-03-14 09:15:28 -04:00
2011-03-21 01:10:41 -04:00
2011-01-20 16:21:59 -08:00
2011-01-25 15:24:47 -05:00
2011-01-12 20:06:58 -05:00
2011-03-21 00:16:08 -04:00
2011-01-13 10:45:01 -08:00
2011-03-15 02:21:45 -04:00
2011-03-14 09:15:28 -04:00
2011-03-24 10:16:26 -07:00
2011-03-24 10:16:26 -07:00
2011-03-23 19:47:13 -07:00
2011-03-23 19:47:13 -07:00