NDIS WOL and Pending Packets

Discussion in 'Windows Vista Drivers' started by Peter, Mar 8, 2008.

  1. Peter

    Peter Guest


    The WDK is a bit fuzzy about this, but does a miniport need to complete all
    pending tx packets before completing the set request of OID_PNP_SET_POWER? I
    seem to recall that there were reasons why the driver shouldn't (and perhaps
    couldn't) during D0-D1 state transitions.

    Also, when transitioning to D1/D2/D3, should the driver wait for all pending
    rx packets to be returned?

    Peter, Mar 8, 2008
    1. Advertisements

  2. Neither is necessary with NDIS 5.x or older miniports. In NDIS 6.0 the stack
    including miniport adapter is -paused- before going to low power state, so
    in practice there will not be any pending transmit or received packets.

    Alireza Dabagh [MS], Mar 8, 2008
    1. Advertisements

  3. Peter

    Peter Guest

    Thanks for the quick response, Ali!

    For NDIS 5.x or older miniports, would the driver still be able to complete
    sends or wait for all rx packets to be returned while handling the set of
    OID_PNP_SET_POWER? I can see situations where the driver may not want to do
    this (e.g., delaying the transition to a low-power state). However, aren't
    the stacks somewhat "unhinged" (not unbound) from the driver during this
    time? If so, calling NdisMSendComplete or waiting for all pending calls to
    MiniportReturnPacket could have side-effects.

    Peter, Mar 8, 2008
  4. the stacks somewhat "unhinged" (not unbound) from the driver during this
    Only if the protocols do not support ProtocolPnPEvent/SetPower
    Maxim S. Shatskih, Mar 8, 2008
    1. Advertisements

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.