+0
−5
+57
−58
Loading
Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more
In OCFS2, allocator locks rank above transaction start. Thus we cannot extend quota file from inside a transaction less we could deadlock. We solve the problem by starting transaction not already in ocfs2_acquire_dquot() but only in ocfs2_local_read_dquot() and ocfs2_global_read_dquot() and we allocate blocks to quota files before starting the transaction. In case we crash, quota files will just have a few blocks more but that's no problem since we just use them next time we extend the quota file. Signed-off-by:Jan Kara <jack@suse.cz> Signed-off-by:
Joel Becker <joel.becker@oracle.com>