VirtualBox

Changeset 36133 in vbox


Ignore:
Timestamp:
Mar 2, 2011 10:18:04 PM (14 years ago)
Author:
vboxsync
Message:

iSCSI: Clear tail pointer of waiting PDUs during reattach too (safety) and insert responses to NOP-in requests at the front of the waiting PDUs to transmit

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Storage/ISCSI.cpp

    r33567 r36133  
    22192219    if (!fFront)
    22202220    {
    2221         /* Link the PDU at the tail of the list. */
     2221        /* Insert PDU at the tail of the list. */
    22222222        if (!pImage->pIScsiPDUTxHead)
    22232223            pImage->pIScsiPDUTxHead = pIScsiPDUTx;
     
    22282228    else
    22292229    {
    2230         /* Link PDU to at the front of the list. */
     2230        /* Insert PDU at the beginning of the list. */
    22312231        pIScsiPDUTx->pNext = pImage->pIScsiPDUTxHead;
    22322232        pImage->pIScsiPDUTxHead = pIScsiPDUTx;
     
    24842484                    RTSgBufInit(&pIScsiPDUTx->SgBuf, pIScsiPDUTx->aISCSIReq, cnISCSIReq);
    24852485
    2486                     /* Link the PDU to the list. */
    2487                     iscsiPDUTxAdd(pImage, pIScsiPDUTx, false /* fFront */);
     2486                    /*
     2487                     * Link the PDU to the list.
     2488                     * Insert at the front of the list to send the response as soon as possible
     2489                     * to avoid frequent reconnects for a slow connection when there are many PDUs
     2490                     * waiting.
     2491                     */
     2492                    iscsiPDUTxAdd(pImage, pIScsiPDUTx, true /* fFront */);
    24882493
    24892494                    /* Start transfer of a PDU if there is no one active at the moment. */
     
    32193224        RTMemFree(pIScsiPDUTx);
    32203225    }
     3226
     3227    /* Clear the tail pointer (safety precaution). */
     3228    pImage->pIScsiPDUTxTail = NULL;
    32213229
    32223230    /* Clear the current PDU too. */
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette