]> git.kernelconcepts.de Git - karo-tx-linux.git/commitdiff
staging: lustre: lov: ld_target could be NULL
authorBobi Jam <bobijam.xu@intel.com>
Sun, 29 Jan 2017 00:05:03 +0000 (19:05 -0500)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 3 Feb 2017 12:01:38 +0000 (13:01 +0100)
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 <bobijam.xu@intel.com>
Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-8018
Reviewed-on: http://review.whamcloud.com/21411
Reviewed-by: Jinshan Xiong <jinshan.xiong@intel.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
Signed-off-by: James Simmons <jsimmons@infradead.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/lustre/lustre/lov/lov_object.c

index 9c4b5ab83d9d846b3e85d0f33dc09a18f18f4938..977579c9c51938a190c9e902e276710e8f987806 100644 (file)
@@ -266,6 +266,13 @@ static int lov_init_raid0(const struct lu_env *env, struct lov_device *dev,
                        if (result != 0)
                                goto out;
 
+                       if (!dev->ld_target[ost_idx]) {
+                               CERROR("%s: OST %04x is not initialized\n",
+                               lov2obd(dev->ld_lov)->obd_name, ost_idx);
+                               result = -EIO;
+                               goto out;
+                       }
+
                        subdev = lovsub2cl_dev(dev->ld_target[ost_idx]);
                        subconf->u.coc_oinfo = oinfo;
                        LASSERTF(subdev, "not init ost %d\n", ost_idx);