[ewg] [PATCHv8 04/11] ib_core: IBoE CMA device binding

Roland Dreier rdreier at cisco.com
Wed May 12 13:05:06 PDT 2010


 > +static void iboe_mcast_work_handler(struct work_struct *work)
 > +{
 > +	struct iboe_mcast_work *mw = container_of(work, struct iboe_mcast_work, work);
 > +	struct cma_multicast *mc = mw->mc;
 > +	struct ib_sa_multicast *m = mc->multicast.ib;
 > +
 > +	mc->multicast.ib->context = mc;
 > +	cma_ib_mc_handler(0, m);
 > +	kref_put(&mc->mcref, release_mc);
 > +	kfree(mw);
 > +}

I'm having a hard time working out why the iboe case needs to schedule
to a work queue here since its already in process context, right?  It
seems it would be really preferable to avoid all the extra pointer
munging and reference counting, and just call things directly.

 - R.
-- 
Roland Dreier <rolandd at cisco.com> || For corporate legal information go to:
http://www.cisco.com/web/about/doing_business/legal/cri/index.html



More information about the ewg mailing list