[ofw] userspace rearm_cq

Fab Tillier ftillier at windows.microsoft.com
Mon Jun 16 13:43:54 PDT 2008


> From: Sean Hefty [mailto:sean.hefty at intel.com]
> Sent: Monday, June 16, 2008 1:41 PM
>
>> For Network Direct, the UVP is not involved, the client's OVERLAPPED is
>> used in an IOCTL to the kernel, where the CQ doorbell is rung and the
>> IRP queued.  When the notification event occurs, the IRP is completed
>> from the CQ's DISPATCH_LEVEL callback.
>
> I ended up doing this differently in Winverbs.  It queues the
> overlapped in the
> kernel to either an 'error queue' or a 'completion queue' associated
> with the
> CQ.  If the IOCTL returns some for of success, then the library calls
> the uvp
> rearm routine.  Functionally, I'm guessing these are roughly the same.

Actually, this is what happens for Network Direct too.  If the IOCTL function returns PENDING then the UVP is armed.

I think it could all be done in the kernel, but the existing driver structure does not support this.

-Fab



More information about the ofw mailing list