From 05bb13638687401a05cac61164ff5aca98e927e6 Mon Sep 17 00:00:00 2001 From: bobijam Date: Wed, 25 Mar 2009 01:36:24 +0000 Subject: [PATCH] Branch b1_6 b=17378 i=johann i=andrew.perepechko (panda) qos_shrink_lsm() may allocate a new lsm while lov_free_memmd() still exerting on old lsmp causes LBUG. --- lustre/lov/lov_request.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/lustre/lov/lov_request.c b/lustre/lov/lov_request.c index 6b27291..7cc5793 100644 --- a/lustre/lov/lov_request.c +++ b/lustre/lov/lov_request.c @@ -734,6 +734,8 @@ int lov_prep_create_set(struct obd_export *exp, struct obd_info *oinfo, set->set_oti = oti; rc = qos_prep_create(exp, set); + /* qos_shrink_lsm() may have allocated a new lsm */ + *lsmp = oinfo->oi_md; if (rc) lov_fini_create_set(set, lsmp); else @@ -1563,7 +1565,7 @@ void lov_update_statfs(struct obd_statfs *osfs, struct obd_statfs *lov_sfs, } /* The callback for osc_statfs_async that finilizes a request info when a - * response is recieved. */ + * response is received. */ static int cb_statfs_update(struct obd_info *oinfo, int rc) { struct lov_request *lovreq; -- 1.8.3.1