From c453ccb0f82fcaa5f537620990c4cc90a769b210 Mon Sep 17 00:00:00 2001 From: Jinshan Xiong Date: Wed, 15 Jun 2011 22:30:27 -0700 Subject: [PATCH] LU-395: obd_zombie_barrier is not barrier actually a hotfix for avoiding deadlock: sys_umount -> class_detach -> obd_zombie_impexp_cull -> filter_cleanup -> obd_zombie_barrier, but the zombies_count will only be decreased after obd_zombie_impexp_cull, so this process is waiting for itself, this is a deadlock. Signed-off-by: Jinshan Xiong Change-Id: Id29deab4c85a7570ec59b2a20f70ccfae9440f01 Reviewed-on: http://review.whamcloud.com/945 Reviewed-by: Mikhail Pershin Tested-by: Hudson Reviewed-by: Oleg Drokin --- lustre/obdclass/obd_config.c | 4 ---- 1 file changed, 4 deletions(-) diff --git a/lustre/obdclass/obd_config.c b/lustre/obdclass/obd_config.c index de433ff..7331460 100644 --- a/lustre/obdclass/obd_config.c +++ b/lustre/obdclass/obd_config.c @@ -545,10 +545,6 @@ int class_detach(struct obd_device *obd, struct lustre_cfg *lcfg) obd->obd_name, obd->obd_uuid.uuid); class_decref(obd, "attach", obd); - - /* not strictly necessary, but cleans up eagerly */ - obd_zombie_impexp_cull(); - RETURN(0); } -- 1.8.3.1