[ofa-general] Re: PATCH 1/1 - fix kernel crash in mad.c when IB_MAD_RESULT_(SUCCESS|CONSUMED) returned

Roland Dreier rdreier at cisco.com
Tue May 20 15:17:59 PDT 2008


 >         case IB_MAD_RESULT_SUCCESS | IB_MAD_RESULT_CONSUMED:
 >                 kmem_cache_free(ib_mad_cache, mad_priv);
 > -               break;
 > +               kfree(local);
 > +               goto out;

Seems you need to set ret = 1 here?  Otherwise I think ib_post_send_mad
will continue handling the send even though the packet was supposedly
consumed.

Also as a side note, I think handle_outgoing_dr_smp() would be clearer
if rather than having

out:
	return ret;

and then doing stuff like

	ret = -EINVAL;
	goto out;

the code just did "return -EINVAL;"

Maybe I'll do that cleanup for 2.6.27.

 - R.



More information about the general mailing list