[ofa-general] Re: [PATCH v2] RDMA/nes: Account for freed pbl after hw operation

Roland Dreier rdreier at cisco.com
Mon Feb 2 09:00:53 PST 2009


 > @@ -572,6 +573,8 @@ static int nes_dealloc_fmr(struct ib_fmr *ibfmr)
 >  	nesmr->ibmw.rkey = ibfmr->rkey;
 >  	nesmr->ibmw.uobject = NULL;
 >  
 > +	rc = nes_dealloc_mw(&nesmr->ibmw);
 > +
 >  	if (nesfmr->nesmr.pbls_used != 0) {
 >  		spin_lock_irqsave(&nesadapter->pbl_lock, flags);
 >  		if (nesfmr->nesmr.pbl_4k) {

Can this be right?  nes_dealloc_mw() fails, so the HW still thinks it
owns the resources, and then the function just continues and releases
the PBLs before returning?

[And same issue seems to be there for the change to nes_dereg_mr]

 - R.



More information about the general mailing list