Queries about OID_TCP_TASK_OFFLOAD

Hello!

I’ve recently started on adding Chimney support to our NDIS 6.2 miniport driver and have run into some issues:

  1. The description for this Oid (in WDK 7.1 docs) refers to a NDIS_TASK_OFFLOAD_HEADER structure as an input. Compiling the Miniport as a 6.2 miniport results in a compilation error as this structure is declared in an #if LEGACY_MINIPORT_DRIVER sandwich (in ndis.h) which does not seem to be entered for NDIS 6.x drivers

Also, the description does not mention any NDIS version dependencies for this Oid.

  1. Furthermore, the miniport is then required to respond back with a NDIS_TASK_TCP_CONNECTION_OFFLOAD struct. This struct is not declared in any of the WDK 7.1 header files including ndischimney.h as mentioned in the associated docs.

I’m sure I’m missing something here and any help would be highly appreciated.

TIA

:slight_smile:

What WDK are you using? IIRC the second release of the Windows 7 WDK
(7600.16385.1) is the first to include Chimney support.

Thomas F. Divine
http://www.pcausa.com


From:
Sent: Thursday, July 15, 2010 8:30 PM
To: “Windows System Software Devs Interest List”
Subject: [ntdev] Queries about OID_TCP_TASK_OFFLOAD

>
> Hello!
>
> I’ve recently started on adding Chimney support to our NDIS 6.2 miniport
> driver and have run into some issues:
>
> 1. The description for this Oid (in WDK 7.1 docs) refers to a
> NDIS_TASK_OFFLOAD_HEADER structure as an input. Compiling the Miniport as
> a 6.2 miniport results in a compilation error as this structure is
> declared in an #if LEGACY_MINIPORT_DRIVER sandwich (in ndis.h) which does
> not seem to be entered for NDIS 6.x drivers
>
> Also, the description does not mention any NDIS version dependencies for
> this Oid.
>
> 2. Furthermore, the miniport is then required to respond back with a
> NDIS_TASK_TCP_CONNECTION_OFFLOAD struct. This struct is not declared in
> any of the WDK 7.1 header files including ndischimney.h as mentioned in
> the associated docs.
>
> I’m sure I’m missing something here and any help would be highly
> appreciated.
>
> TIA
>
> :slight_smile:
>
>
>
>
>
>
> —
> NTDEV is sponsored by OSR
>
> For our schedule of WDF, WDM, debugging and other seminars visit:
> http://www.osr.com/seminars
>
> To unsubscribe, visit the List Server section of OSR Online at
> http://www.osronline.com/page.cfm?name=ListServer

Many thanks for the quick reply :slight_smile:

I’m using 7600.16385.1… was pretty sure, but just made doubly certain.

Hmmm, that looks like a documentation error. The OID_TCP_TASK_OFFLOAD request is only used for NDIS 5.x drivers. Since you’re a 6.20 miniport, you should advertise your capabilities through NdisMSetMiniportAttributes with an NDIS_MINIPORT_ADAPTER_OFFLOAD_ATTRIBUTES structure containing a pointer to an NDIS_TCP_CONNECTION_OFFLOAD structure.

Then implement a MiniportSetOptions handler, and set your offload handlers through NdisSetOptionalHandlers with a NDIS_PROVIDER_CHIMNEY_OFFLOAD_GENERIC_CHARACTERISTICS and then again with a NDIS_PROVIDER_CHIMNEY_OFFLOAD_TCP_CHARACTERISTICS. ( http://msdn.microsoft.com/en-us/library/ff570473(VS.85).aspx )

When the stack wants to enable offload, it’ll use the handlers in your generic characteristics to initiate it. (http://msdn.microsoft.com/en-us/library/ff554940(VS.85).aspx )

As an NDIS 6.x driver, you’ll never need to use OID_TCP_TASK_OFFLOAD, NDIS_TASK_OFFLOAD_HEADER, or the fictional NDIS_TASK_TCP_CONNECTION_OFFLOAD structure; any documentation that refers to them is in error.

-----Original Message-----
From: xxxxx@lists.osr.com [mailto:xxxxx@lists.osr.com] On Behalf Of xxxxx@live.com
Sent: Thursday, July 15, 2010 5:42 PM
To: Windows System Software Devs Interest List
Subject: RE:[ntdev] Queries about OID_TCP_TASK_OFFLOAD

Many thanks for the quick reply :slight_smile:

I’m using 7600.16385.1… was pretty sure, but just made doubly certain.


NTDEV is sponsored by OSR

For our schedule of WDF, WDM, debugging and other seminars visit:
http://www.osr.com/seminars

To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer

Hi Jeffrey

Thanks for clarifying this.

I’m already doing all of what you’ve suggested… but was stumped by the doc references to this Oid and the related structures.

Your email id mentions ms so could I impose on you to bring this to the notice of the DDK doc folks…? It would be nice to get these corrections in the next doc update.

Once again, many thanks for breaking this log jam.

(Not speaking for Jeffery, obviously)

It’s a good idea to use the ‘Send Feedback on this topic’ at the bottom of
every API page to report the error so that the wdk docs team is aware of
this and it gets into their reporting system.

mm

-----Original Message-----
From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of xxxxx@live.com
Sent: Thursday, July 15, 2010 10:01 PM
To: Windows System Software Devs Interest List
Subject: RE:[ntdev] Queries about OID_TCP_TASK_OFFLOAD

Hi Jeffrey

Thanks for clarifying this.

I’m already doing all of what you’ve suggested… but was stumped by the doc
references to this Oid and the related structures.

Your email id mentions ms so could I impose on you to bring this to the
notice of the DDK doc folks…? It would be nice to get these corrections in
the next doc update.

Once again, many thanks for breaking this log jam.


NTDEV is sponsored by OSR

For our schedule of WDF, WDM, debugging and other seminars visit:
http://www.osr.com/seminars

To unsubscribe, visit the List Server section of OSR Online at
http://www.osronline.com/page.cfm?name=ListServer

My email id does indeed mention ms, and I will file a bug for this.

But, you also have the power to file bugs on the docs. All you have to do is click the " Send comments about this topic to Microsoft" link at the bottom of every page.

-----Original Message-----
From: xxxxx@lists.osr.com [mailto:xxxxx@lists.osr.com] On Behalf Of xxxxx@live.com
Sent: Thursday, July 15, 2010 7:01 PM
To: Windows System Software Devs Interest List
Subject: RE:[ntdev] Queries about OID_TCP_TASK_OFFLOAD

Hi Jeffrey

Thanks for clarifying this.

I’m already doing all of what you’ve suggested… but was stumped by the doc references to this Oid and the related structures.

Your email id mentions ms so could I impose on you to bring this to the notice of the DDK doc folks…? It would be nice to get these corrections in the next doc update.

Once again, many thanks for breaking this log jam.


NTDEV is sponsored by OSR

For our schedule of WDF, WDM, debugging and other seminars visit:
http://www.osr.com/seminars

To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer

Mea Culpa.

Thanks for reminding me… I’d completely forgotten about that option… Guess I always just glanced at it but never really saw it.

I’ll certainly go that route in the future (insofar as doc issues go).