[openib-general] [PATCH/RFC 1/2] IB: Return "maybe_missed_event" hint from ib_req_notify_cq()
Michael S. Tsirkin
mst at mellanox.co.il
Tue Nov 28 00:35:11 PST 2006
> Quoting r. Roland Dreier <rdreier at cisco.com>:
> Subject: Re: [PATCH/RFC 1/2] IB: Return "maybe_missed_event" hint from ib_req_notify_cq()
>
> It occurs to me that the behavior of ehca spinning in the IPoIB poll
> routine would be exactly the symptom you would see if
> ib_req_notify_cq() was incorrectly reporting a missed event when the
> CQ is in fact empty. In that case, the code would jump back to
> repoll, find the CQ empty, call ib_req_notify_cq() again, and probably
> get another missed event indicator (and jump back to repoll again, etc).
>
> However I looked over the ehca changes in my NAPI branch and they
> _still_ look right to me. So maybe my idea is just hot air.
I have another idea: what if ehca event handling would
sometimes cause interrupts to be lost? This could happen for example if
there is bug in ehca, and completion event could bypass a completion somehow:
you get an interrupt and you poll CQ, and you see that it's still empty.
In this case, old IPoIB code and forcing missed event indicator to 1
would appear to work better than new NAPI code simply because old code polls CQ
a bit later, after request for notification, and it just *happens* to sometimes pick up
completions that wouldn't otherwise get reported until the next packet.
--
MST
More information about the general
mailing list