Whamcloud - gitweb
LU-4529 quota: call qsd_op_end() after trasn stop
authorNiu Yawei <yawei.niu@intel.com>
Thu, 23 Jan 2014 04:09:54 +0000 (23:09 -0500)
committerOleg Drokin <oleg.drokin@intel.com>
Mon, 11 Aug 2014 15:36:45 +0000 (11:36 -0400)
commit7d62abd99b6343c1562a7d0159dc5397eb44449d
treeaca3a1dbaedd84c221ec31d3fc0dceaaaee7fc42
parent9f16e82363f50fc591637ef487217d3ecd704d32
LU-4529 quota: call qsd_op_end() after trasn stop

qsd_op_end() shouldn't be called before the transaction stopped,
because qsd_op_end() is a quite heavy operation which could
probably allocate memory with standard allocator flag (__GFP_IO),
and allocating memory could result in dirty flush on other
filesystems, that will lead to opening transaction on different
journal and trigger the assert in jbd2_journal_start():
J_ASSERT(handle->h_transaction->t_journal == journal) at the end.

Signed-off-by: Niu Yawei <yawei.niu@intel.com>
Change-Id: I4ea3ff011fa7e44460b9912050e90b174813e01a
Reviewed-on: http://review.whamcloud.com/8968
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Fan Yong <fan.yong@intel.com>
Reviewed-by: Johann Lombardi <johann.lombardi@intel.com>
lustre/osd-ldiskfs/osd_handler.c