On Tue, Sep 25, 2012 at 1:11 AM, FUJITA Tomonori <fujita.tomonori@xxxxxxxxxxxxx> wrote: > On Mon, 24 Sep 2012 11:42:48 +0200 > Roi Dayan <roid@xxxxxxxxxxxx> wrote: > >> When a module fails to initialize its target_list pointer >> is not initialized. >> >> Signed-off-by: Roi Dayan <roid@xxxxxxxxxxxx> > > How about always initializing target_list? > > > diff --git a/usr/tgtd.c b/usr/tgtd.c > index b4c78ec..9f0650b 100644 > --- a/usr/tgtd.c > +++ b/usr/tgtd.c > @@ -426,13 +426,13 @@ int lld_init_one(int lld_index) > { > int err; > > + INIT_LIST_HEAD(&tgt_drivers[lld_index]->target_list); > if (tgt_drivers[lld_index]->init) { > err = tgt_drivers[lld_index]->init(lld_index, spare_args); > if (err) { > tgt_drivers[lld_index]->drv_state = DRIVER_ERR; > return err; > } > - INIT_LIST_HEAD(&tgt_drivers[lld_index]->target_list); > tgt_drivers[lld_index]->drv_state = DRIVER_INIT; > } > return 0; > -- I chose not to show the targets if a driver is in error state but maybe it should. This looks better. Thanks, Roi -- To unsubscribe from this list: send the line "unsubscribe stgt" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html