Jan Kara
bc8e5f0739
quota: Refactor dquot_transfer code so that OCFS2 can pass in its references
...
Currently, __dquot_transfer() acquires its own references of dquot structures
that will be put into inode. But for OCFS2, this creates a lock inversion
between dq_lock (waited on in dqget) and transaction start (started in
ocfs2_setattr). Currently, deadlock is impossible because dq_lock is acquired
only during dquot_acquire and dquot_release and we already hold a reference to
dquot structures in ocfs2_setattr so neither of these functions can be called
while we call dquot_transfer. But this is rather subtle and it is hard to teach
lockdep about it. So provide __dquot_transfer function that can be passed dquot
references directly. OCFS2 can then pass acquired dquot references directly to
__dquot_transfer with proper locking.
Signed-off-by: Jan Kara <jack@suse.cz >
2010-05-21 19:30:45 +02:00
..
2010-05-17 17:24:04 +01:00
2010-05-17 22:39:48 -07:00
2010-05-19 12:57:48 -03:00
2010-05-20 09:41:44 -07:00
2010-05-14 01:56:12 +01:00
2010-05-11 18:35:27 +02:00
2010-05-03 08:33:00 -04:00
2010-05-14 15:09:37 -04:00
2010-05-20 21:26:12 -07:00
2010-05-04 13:34:27 -07:00
2010-05-14 17:08:01 -04:00
2010-05-19 13:38:54 -04:00
2010-05-18 09:17:01 -07:00
2010-05-04 09:25:02 -07:00
2010-05-10 14:24:26 +02:00
2010-05-15 07:16:33 -04:00
2010-05-10 16:08:01 -07:00
2010-05-21 19:30:44 +02:00
2010-05-17 10:00:15 +02:00
2010-05-21 19:30:39 +02:00
2010-05-20 21:04:44 -07:00
2010-05-21 07:19:18 -07:00
2010-05-18 08:35:04 -07:00
2010-05-01 04:32:14 +02:00
2010-05-20 00:18:59 +01:00
2010-05-04 11:09:28 +02:00
2010-05-17 22:49:55 -07:00
2010-05-15 23:48:02 -07:00
2010-05-03 12:33:13 +03:00
2010-05-06 00:47:21 -07:00
2010-05-11 16:10:47 -07:00
2010-05-03 11:50:57 +02:00
2010-05-11 14:40:55 +02:00
2010-05-03 11:50:57 +02:00
2010-05-21 19:30:40 +02:00
2010-05-18 23:01:55 -07:00
2010-05-14 15:09:32 -04:00
2010-05-19 13:38:55 -04:00
2010-05-18 00:52:36 -03:00
2010-05-18 23:01:55 -07:00
2010-05-11 14:40:55 +02:00
2010-05-01 15:00:15 -07:00
2010-05-20 21:04:44 -07:00
2010-05-06 01:31:27 -07:00
2010-05-14 15:09:30 -04:00
2010-05-14 15:09:21 -04:00
2010-05-14 15:09:30 -04:00
2010-05-10 11:32:33 +09:00
2010-05-07 14:55:50 -04:00
2010-05-06 00:47:21 -07:00
2010-05-11 08:31:49 +02:00
2010-05-17 21:37:40 +02:00
2010-05-10 23:08:19 +02:00
2010-05-10 23:09:30 +02:00
2010-05-10 23:08:15 +02:00
2010-05-21 19:30:44 +02:00
2010-05-21 19:30:45 +02:00
2010-05-18 09:28:04 -07:00
2010-05-03 15:53:54 -07:00
2010-05-10 16:53:55 -07:00
2010-05-18 08:27:54 -07:00
2010-05-18 08:27:54 -07:00
2010-05-11 10:09:47 +02:00
2010-05-11 14:40:55 +02:00
2010-05-18 08:27:54 -07:00
2010-05-06 10:56:07 +10:00
2010-05-13 18:42:25 +09:00
2010-05-17 17:18:50 -07:00
2010-05-10 11:08:35 -07:00
2010-05-08 17:12:33 +02:00
2010-05-15 23:28:39 -07:00
2010-05-03 23:50:42 -07:00
2010-05-09 19:35:27 +02:00
2010-05-12 23:02:23 -07:00
2010-05-12 23:02:23 -07:00
2010-05-05 11:46:17 -04:00
2010-05-17 07:57:27 -07:00
2010-05-20 13:21:50 -07:00
2010-05-11 16:07:59 -06:00
2010-05-11 16:07:59 -06:00
2010-05-11 16:07:59 -06:00
2010-05-19 12:58:37 -03:00
2010-05-20 21:26:12 -07:00
2010-05-17 21:37:42 +02:00