Whamcloud - gitweb
LU-4529 quota: call qsd_op_end() after trasn stop 68/8968/3
authorNiu Yawei <yawei.niu@intel.com>
Thu, 23 Jan 2014 04:09:54 +0000 (23:09 -0500)
committerOleg Drokin <oleg.drokin@intel.com>
Sat, 22 Feb 2014 08:02:32 +0000 (08:02 +0000)
commit92dfc25dc760bba8664dc480204a72da5f5e215d
treeddb7a276f410d60bc31a0d2c48754bf411acc74f
parenteb475423196375e302ea6130e7a53b4d1d016e09
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