On Wed, Feb 08, 2017 at 03:43:45PM -0500, David Miller wrote: > From: David Miller <da...@davemloft.net> > Date: Wed, 08 Feb 2017 15:28:48 -0500 (EST) > > > Looks really nice, series applied, thanks! > > Jiri, just FYI, I bungled up merging this. And I am trying to fix > that up. > > I forgot to include patch #14, but I'll apply that now in the > mainline. > > I get a warning, in mlxsw_sp_nexthop_group_create() because the > compiler thinks that 'nh' can be use uninitialized. And I think > the compiler is pointing out something legitimate. > > This cleanup loop in err_nexthop_group_insert and err_nexthop_init > needs to take the 'nh' from &nh_grp->nexthops[i] instead of using > whatever is left in 'nh' for all mlxsw_sp_nexthop_fini() calls. > > So I'm going to augment the commit of patch #14 to make it go: > > @@ -1667,8 +1667,10 @@ mlxsw_sp_nexthop_group_create(struct mlxsw_sp > *mlxsw_sp, struct fib_info *fi) > > err_nexthop_group_insert: > err_nexthop_init: > - for (i--; i >= 0; i--) > + for (i--; i >= 0; i--) { > + nh = &nh_grp->nexthops[i]; > mlxsw_sp_nexthop_fini(mlxsw_sp, nh); > + }
Looks good to me. Thanks for fixing that up! This is now consistent with mlxsw_sp_nexthop_group_destroy(). > kfree(nh_grp); > return ERR_PTR(err); > } >