From cd09dd47819737604c2fb5109abd90995afeb968 Mon Sep 17 00:00:00 2001 From: wangdi Date: Sun, 8 Dec 2013 00:00:03 -0800 Subject: [PATCH] LU-3857 osd: cleanup procfs after osd_shutdown Since osd_procfs_fini will try cleanup all proc entries, and osd_shutdown/qsd_fini will try to cleanup procfs itself, so osd_procfs_fini should be done after qsd_fini, otherwise the qsd entries will be destoryed twice, and caused panic Call Trace: [] lprocfs_remove+0x25/0x40 [obdclass] [] qsd_fini+0x80/0x450 [lquota] [] osd_shutdown+0x38/0xe0 [osd_ldiskfs] [] osd_device_fini+0x129/0x190 [osd_ldiskfs] [] class_cleanup+0x573/0xd30 [obdclass] [] ? class_name2dev+0x7c/0xe0 [obdclass] [] class_process_config+0x156a/0x1ad0 [obdclass] [] ? libcfs_log_return+0x28/0x40 [libcfs] [] ? lustre_cfg_new+0x312/0x6e0 [obdclass] [] class_manual_cleanup+0x179/0x6e0 [obdclass] [] ? libcfs_log_return+0x28/0x40 [libcfs] [] osd_obd_disconnect+0x174/0x1e0 [osd_ldiskfs] [] lustre_put_lsi+0x1ab/0xeb0 [obdclass] [] lustre_common_put_super+0x5c8/0xbe0 [obdclass] [] server_put_super+0x1bd/0xed0 [obdclass] [] server_fill_super+0x68b/0x1630 [obdclass] [] lustre_fill_super+0x1d8/0x530 [obdclass] [] ? lustre_fill_super+0x0/0x530 [obdclass] Signed-off-by: wang di Change-Id: If12cebf971583afeeaa031bd24f69bb0fe0cdf1a Reviewed-on: http://review.whamcloud.com/8506 Tested-by: Jenkins Tested-by: Maloo Reviewed-by: Fan Yong Reviewed-by: Mike Pershin Reviewed-by: Oleg Drokin --- lustre/osd-ldiskfs/osd_handler.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lustre/osd-ldiskfs/osd_handler.c b/lustre/osd-ldiskfs/osd_handler.c index 6e276b8..c13c682 100644 --- a/lustre/osd-ldiskfs/osd_handler.c +++ b/lustre/osd-ldiskfs/osd_handler.c @@ -5509,8 +5509,8 @@ static struct lu_device *osd_device_fini(const struct lu_env *env, struct osd_device *o = osd_dev(d); ENTRY; - osd_procfs_fini(o); osd_shutdown(env, o); + osd_procfs_fini(o); osd_scrub_cleanup(env, o); osd_obj_map_fini(o); osd_umount(env, o); -- 1.8.3.1