From 916b5f7f4672c1070e27a2fe0bfae371b0a729d6 Mon Sep 17 00:00:00 2001 From: Bobi Jam Date: Tue, 19 Jul 2016 08:25:01 +0800 Subject: [PATCH] LU-8018 lov: ld_target could be NULL lov_device::ld_target[ost_idx] could be NULL if the OST target is not filled in lov_device::ld_lov::lov_tgt_desc[ost_idx] yet. Signed-off-by: Bobi Jam Change-Id: I1eddb49b3c3518828c531af568b851465ccdffa3 Reviewed-on: http://review.whamcloud.com/21411 Tested-by: Jenkins Tested-by: Maloo Reviewed-by: Jinshan Xiong Reviewed-by: John L. Hammond Reviewed-by: Oleg Drokin --- lustre/lov/lov_object.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/lustre/lov/lov_object.c b/lustre/lov/lov_object.c index 8df5f5f..cc05543 100644 --- a/lustre/lov/lov_object.c +++ b/lustre/lov/lov_object.c @@ -271,6 +271,12 @@ static int lov_init_raid0(const struct lu_env *env, struct lov_device *dev, if (result != 0) GOTO(out, result); + if (dev->ld_target[ost_idx] == NULL) { + CERROR("%s: OST %04x is not initialized\n", + lov2obd(dev->ld_lov)->obd_name, ost_idx); + GOTO(out, result = -EIO); + } + subdev = lovsub2cl_dev(dev->ld_target[ost_idx]); subconf->u.coc_oinfo = oinfo; LASSERTF(subdev != NULL, "not init ost %d\n", ost_idx); -- 1.8.3.1