[ofw] Build errors in Ipiob_ndis6_cm (WinOF2.2 branch) for non-dma support

Fab Tillier ftillier at microsoft.com
Wed May 26 16:23:19 PDT 2010


Sophia Germans wrote on Wed, 26 May 2010 at 16:18:10
> 
> Hi,
> 
> I changed IPOIB_USE_DMA to zero, so that it uses MDLs to get the system
> Virtual address for a special purpose.
> 
>  But I find that there are compilation errors :
> errors in directory d:\source\wof22\ulp\ipoib_ndis6_cm\kernel
> d:\source\wof22\ulp\ipoib_ndis6_cm\kernel\ipoib_port.cpp(3609) : error
> C3861: 'NdisQueryBuffer': identifier not found
> d:\source\wof22\ulp\ipoib_ndis6_cm\kernel\ipoib_port.cpp(3624) : error
> C2660: '__send_copy' : function does not take 2 arguments
> d:\source\wof22\ulp\ipoib_ndis6_cm\kernel\ipoib_port.cpp(5678) : error
> C3861: 'ipoib_process_sg_list_real': identifier not found
> d:\source\wof22\ulp\ipoib_ndis6_cm\kernel\ipoib_port.cpp(3609) : error
> C3861: 'NdisQueryBuffer': identifier not found
> d:\source\wof22\ulp\ipoib_ndis6_cm\kernel\ipoib_port.cpp(3624) : error
> C2660: '__send_copy' : function does not take 2 arguments
> d:\source\wof22\ulp\ipoib_ndis6_cm\kernel\ipoib_port.cpp(5678) : error
> C3861: 'ipoib_process_sg_list_real': identifier not found link : error
> LNK1181: cannot open input file
> 'd:\source\wof22\ulp\ipoib_ndis6_cm\kernel\objfre_wlh_amd64\amd64\ipoib_
> port.obj'
> 
> Changing NdisQueryBuffer to NdisQueryBufferSafe would be one thing, but
> still it expects a NDIS_PACKET whereas the function passes NET_BUFFER.

This is likely a relic of the NDIS 6 conversion not being complete, leaving behind the original NDIS 5 code.  You can try running the NDIS 5 version of IPoIB and see you can get that to work properly.  Otherwise, you have to update the send code paths to NDIS 6.

-Fab



More information about the ofw mailing list