Whamcloud - gitweb
LU-7055 osd: move dput() out of osd_ost_fini()'s rwlock 89/19189/2
authorEmoly Liu <emoly.liu@intel.com>
Tue, 29 Mar 2016 07:04:44 +0000 (15:04 +0800)
committerOleg Drokin <oleg.drokin@intel.com>
Mon, 11 Apr 2016 02:51:54 +0000 (02:51 +0000)
commitae70c9e898b8230f26f659bfd85665230ea49720
tree9e377d708c896f742f679ddb6646ce9e4cc23913
parent8caff5d019674aea7d98e225d0136bf4694d5157
LU-7055 osd: move dput() out of osd_ost_fini()'s rwlock

osd_ost_fini() calls into osd_seq_free() under write lock, which
in turn calls into dput() that might sleep and cause "BUG: rwlock
wrong CPU on CPU#x, umount/xxx" sort of messages.
To fix this issue, this patch only keeps list_del_init() under
write lock, and moves sleeping function out of there.

Signed-off-by: Emoly Liu <emoly.liu@intel.com>
Change-Id: Ie1eef345d1735bb88aeb016a2409ea649cd20fe5
Reviewed-on: http://review.whamcloud.com/19189
Tested-by: Jenkins
Reviewed-by: Fan Yong <fan.yong@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
lustre/osd-ldiskfs/osd_compat.c