Can you please help me to find how to communicate, from a filter driver, context size needs to underlying (e.g., other filter, miniport) and overlying (e.g., other filter, protocol) drivers in order to prevent memory allocations in calls to NdisAllocatenetBufferListContext for NET_BUFFER_LISTs passed to FilterSendNetBufferLists and FilterReceiveNetBufferLists?
Besides, as my filter driver generates sends and receive indications of its own, including calls to NdisAllocateNetBufferListPool, NdisAllocateCloneNetBufferList and NdisAllocateNetBufferList, how can I determine the context needs of all underlying and overlying drivers in order to provide a big enough value for the ContextSize in parameters to those calls?
Documentation page NET_BUFFER_LIST_CONTEXT structure says "NDIS estimates the required context data space and, if necessary, adjusts the allocated data space to meet the requirements for the entire driver stack", but I don't know if I'm supposed to contribute some information to aid NDIS in making that estimate.
Thank you very much.
It looks like you're new here. If you want to get involved, click one of these buttons!
|Upcoming OSR Seminars|
|Developing Minifilters||29 July 2019||OSR Seminar Space|
|Writing WDF Drivers||23 Sept 2019||OSR Seminar Space|
|Kernel Debugging||21 Oct 2019||OSR Seminar Space|
|Internals & Software Drivers||18 Nov 2019||Dulles, VA|