On Mar 1, 2018, at 16:31, NeilBrown <[email protected]> wrote: > > ln_nportals should be zero when no portals have > been allocated. This ensures that memory allocation failure > is handled correctly elsewhere. > > Signed-off-by: NeilBrown <[email protected]>
Reviewed-by: Andreas Dilger <[email protected]> > --- > drivers/staging/lustre/lnet/lnet/lib-ptl.c | 5 +++-- > 1 file changed, 3 insertions(+), 2 deletions(-) > > diff --git a/drivers/staging/lustre/lnet/lnet/lib-ptl.c > b/drivers/staging/lustre/lnet/lnet/lib-ptl.c > index 471f2f6c86f4..fc47379c5938 100644 > --- a/drivers/staging/lustre/lnet/lnet/lib-ptl.c > +++ b/drivers/staging/lustre/lnet/lnet/lib-ptl.c > @@ -841,6 +841,7 @@ lnet_portals_destroy(void) > > cfs_array_free(the_lnet.ln_portals); > the_lnet.ln_portals = NULL; > + the_lnet.ln_nportals = 0; > } > > int > @@ -851,12 +852,12 @@ lnet_portals_create(void) > > size = offsetof(struct lnet_portal, ptl_mt_maps[LNET_CPT_NUMBER]); > > - the_lnet.ln_nportals = MAX_PORTALS; > - the_lnet.ln_portals = cfs_array_alloc(the_lnet.ln_nportals, size); > + the_lnet.ln_portals = cfs_array_alloc(MAX_PORTALS, size); > if (!the_lnet.ln_portals) { > CERROR("Failed to allocate portals table\n"); > return -ENOMEM; > } > + the_lnet.ln_nportals = MAX_PORTALS; > > for (i = 0; i < the_lnet.ln_nportals; i++) { > if (lnet_ptl_setup(the_lnet.ln_portals[i], i)) { > > Cheers, Andreas -- Andreas Dilger Lustre Principal Architect Intel Corporation

