> Quoting Roland Dreier <[EMAIL PROTECTED]>: > Subject: Re: please pull for 2.6.21: fix + add IB multicast support > > I merged the "increment port number" and "remove redundant '_wq'" > patches from git.openfabrics.org/~shefty/scm/rdma-dev.git for-roland > > I plan to review to multicast stuff next week and I hope to merge it > for 2.6.21. Or, have you or anyone else at Voltaire read over the > code in addition to using it? Do you see anything that should be > cleaned up?
I looked at the code briefly, don't have much time at the moment unfortunately. +static void join_group(struct mcast_group *group, struct mcast_member *member, + u8 join_state) +{ + member->state = MCAST_MEMBER; + adjust_membership(group, join_state, 1); + group->rec.join_state |= join_state; + member->multicast.rec = group->rec; + member->multicast.rec.join_state = join_state; + list_del(&member->list); + list_add(&member->list, &group->active_list); +} Can be just list_move. Patch allocates everything with kzalloc, but then goes ahead and initialize everything. So just kmalloc it - no reason to waste initialized memory if non-initialized will do. List of places: + member = kzalloc(sizeof *member, gfp_mask); + if (!member) + return ERR_PTR(-ENOMEM); Same here: + group = kzalloc(sizeof *group, gfp_mask); + if (!group) + return NULL; + and same here: + iter = kzalloc(sizeof *iter + attr_size, GFP_KERNEL); + if (!iter) + return ERR_PTR(-ENOMEM); + It seems same goes for + mc = kzalloc(sizeof(*mc), GFP_KERNEL); + if (!mc) + return NULL; in ucma.c - everything gets initied by calling function - but a bit less sure, needs checking. By the way, it seems same goes for + bind_list = kzalloc(sizeof *bind_list, GFP_KERNEL); + if (!bind_list) + return -ENOMEM; in cma_alloc_any_port in the port randomization patch that was merged and for cma_alloc_port in existing code. -- MSTYou seem to be careful to do list_del_init for member->list all over, _______________________________________________ openib-general mailing list openib-general@openib.org http://openib.org/mailman/listinfo/openib-general To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general