[openib-general] CQ error handling in IPoIB

Roland Dreier rdreier at cisco.com
Thu Jan 4 13:39:32 PST 2007


 > When a CQ encounters an error, in order to be able to use the CQ again,
 > the consumer should:
 > * Destroy all the QPs that are attached to the CQ
 > * Destroy the CQ
 > * Recreate the CQ through the Create Completion Queue verb

Yes, true...

 > While (at least one part of) the code does...
 > 
 > static void ipoib_ib_handle_tx_wc(struct net_device *dev, struct ib_wc *wc)
 > {
 > 	...
 > 	...
 > 	...
 >         if (wc->status != IB_WC_SUCCESS &&
 >             wc->status != IB_WC_WR_FLUSH_ERR)

but these aren't CQ errors, they are work request errors.

It is true that the IPoIB driver currently does not handle a QP going
to the error state very gracefully, but the only way it can happen is
because of a SW or HW bug so that recovery hasn't been a high priority.

 - R.




More information about the general mailing list