- Timestamp:
- Oct 21, 2019 6:04:39 PM (5 years ago)
- svn:sync-xref-src-repo-rev:
- 134140
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Devices/Network/DevE1000.cpp
r81418 r81423 3396 3396 * @thread EMT 3397 3397 */ 3398 static DECLCALLBACK(void) e1k TxDelayTimer(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser)3398 static DECLCALLBACK(void) e1kR3TxDelayTimer(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser) 3399 3399 { 3400 3400 PE1KSTATE pThis = (PE1KSTATE)pvUser; … … 3424 3424 * @thread EMT 3425 3425 */ 3426 static DECLCALLBACK(void) e1k TxIntDelayTimer(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser)3426 static DECLCALLBACK(void) e1kR3TxIntDelayTimer(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser) 3427 3427 { 3428 3428 RT_NOREF(pDevIns); … … 3448 3448 * @thread EMT 3449 3449 */ 3450 static DECLCALLBACK(void) e1k TxAbsDelayTimer(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser)3450 static DECLCALLBACK(void) e1kR3TxAbsDelayTimer(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser) 3451 3451 { 3452 3452 RT_NOREF(pDevIns); … … 3473 3473 * @thread EMT 3474 3474 */ 3475 static DECLCALLBACK(void) e1kR xIntDelayTimer(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser)3475 static DECLCALLBACK(void) e1kR3RxIntDelayTimer(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser) 3476 3476 { 3477 3477 PE1KSTATE pThis = (PE1KSTATE)pvUser; … … 3493 3493 * @thread EMT 3494 3494 */ 3495 static DECLCALLBACK(void) e1kR xAbsDelayTimer(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser)3495 static DECLCALLBACK(void) e1kR3RxAbsDelayTimer(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser) 3496 3496 { 3497 3497 PE1KSTATE pThis = (PE1KSTATE)pvUser; … … 3513 3513 * @thread EMT 3514 3514 */ 3515 static DECLCALLBACK(void) e1k LateIntTimer(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser)3515 static DECLCALLBACK(void) e1kR3LateIntTimer(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser) 3516 3516 { 3517 3517 RT_NOREF(pDevIns, pTimer); … … 3537 3537 * @thread EMT 3538 3538 */ 3539 static DECLCALLBACK(void) e1k LinkUpTimer(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser)3539 static DECLCALLBACK(void) e1kR3LinkUpTimer(PPDMDEVINS pDevIns, PTMTIMER pTimer, void *pvUser) 3540 3540 { 3541 3541 RT_NOREF(pTimer); … … 5593 5593 * @note Not executed on EMT. 5594 5594 */ 5595 static DECLCALLBACK(void) e1k TxTaskCallback(PPDMDEVINS pDevIns, void *pvUser)5595 static DECLCALLBACK(void) e1kR3TxTaskCallback(PPDMDEVINS pDevIns, void *pvUser) 5596 5596 { 5597 5597 PE1KSTATE pThis = PDMINS_2_DATA(pDevIns, PE1KSTATE); 5598 E1kLog2(("%s e1k TxTaskCallback:\n", pThis->szPrf));5598 E1kLog2(("%s e1kR3TxTaskCallback:\n", pThis->szPrf)); 5599 5599 5600 5600 int rc = e1kXmitPending(pDevIns, pThis, false /*fOnWorkerThread*/); … … 5640 5640 if (!PDMDevInsTimerIsActive(pDevIns, pThis->hTXDTimer)) 5641 5641 { 5642 # ifdef E1K_INT_STATS5642 # ifdef E1K_INT_STATS 5643 5643 pThis->u64ArmedAt = RTTimeNanoTS(); 5644 # endif5644 # endif 5645 5645 e1kArmTimer(pDevIns, pThis, pThis->hTXDTimer, E1K_TX_DELAY); 5646 5646 } … … 5654 5654 PE1KSTATECC pThisCC = PDMINS_2_DATA_CC(pDevIns, PE1KSTATECC); 5655 5655 if (!pThisCC->CTX_SUFF(pDrv)) 5656 { 5656 5657 PDMDevHlpTaskTrigger(pDevIns, pThis->hTxTask); 5658 rc = VINF_SUCCESS; 5659 } 5657 5660 else 5658 5661 #endif … … 5661 5664 if (rc == VERR_TRY_AGAIN) 5662 5665 rc = VINF_SUCCESS; 5666 #ifndef IN_RING3 5663 5667 else if (rc == VERR_SEM_BUSY) 5664 5668 rc = VINF_IOM_R3_MMIO_WRITE; 5669 #endif 5665 5670 AssertRC(rc); 5666 5671 } … … 7906 7911 7907 7912 /* Create transmit queue */ 7908 rc = PDMDevHlpTaskCreate(pDevIns, PDMTASK_F_RZ, "E1000-Xmit", e1k TxTaskCallback, NULL, &pThis->hTxTask);7913 rc = PDMDevHlpTaskCreate(pDevIns, PDMTASK_F_RZ, "E1000-Xmit", e1kR3TxTaskCallback, NULL, &pThis->hTxTask); 7909 7914 AssertRCReturn(rc, rc); 7910 7915 7911 7916 #ifdef E1K_TX_DELAY 7912 7917 /* Create Transmit Delay Timer */ 7913 rc = PDMDevHlpTimerCreate(pDevIns, TMCLOCK_VIRTUAL, e1k TxDelayTimer, pThis, TMTIMER_FLAGS_NO_CRIT_SECT,7918 rc = PDMDevHlpTimerCreate(pDevIns, TMCLOCK_VIRTUAL, e1kR3TxDelayTimer, pThis, TMTIMER_FLAGS_NO_CRIT_SECT, 7914 7919 "E1000 Transmit Delay Timer", &pThis->hTXDTimer); 7915 7920 AssertRCReturn(rc, rc); … … 7922 7927 { 7923 7928 /* Create Transmit Interrupt Delay Timer */ 7924 rc = PDMDevHlpTimerCreate(pDevIns, TMCLOCK_VIRTUAL, e1k TxIntDelayTimer, pThis, TMTIMER_FLAGS_NO_CRIT_SECT,7929 rc = PDMDevHlpTimerCreate(pDevIns, TMCLOCK_VIRTUAL, e1kR3TxIntDelayTimer, pThis, TMTIMER_FLAGS_NO_CRIT_SECT, 7925 7930 "E1000 Transmit Interrupt Delay Timer", &pThis->hTIDTimer); 7926 7931 AssertRCReturn(rc, rc); … … 7928 7933 # ifndef E1K_NO_TAD 7929 7934 /* Create Transmit Absolute Delay Timer */ 7930 rc = PDMDevHlpTimerCreate(pDevIns, TMCLOCK_VIRTUAL, e1k TxAbsDelayTimer, pThis, TMTIMER_FLAGS_NO_CRIT_SECT,7935 rc = PDMDevHlpTimerCreate(pDevIns, TMCLOCK_VIRTUAL, e1kR3TxIntDelayTimer, pThis, TMTIMER_FLAGS_NO_CRIT_SECT, 7931 7936 "E1000 Transmit Absolute Delay Timer", &pThis->hTADTimer); 7932 7937 AssertRCReturn(rc, rc); … … 7937 7942 #ifdef E1K_USE_RX_TIMERS 7938 7943 /* Create Receive Interrupt Delay Timer */ 7939 rc = PDMDevHlpTimerCreate(pDevIns, TMCLOCK_VIRTUAL, e1kR xIntDelayTimer, pThis, TMTIMER_FLAGS_NO_CRIT_SECT,7944 rc = PDMDevHlpTimerCreate(pDevIns, TMCLOCK_VIRTUAL, e1kR3RxIntDelayTimer, pThis, TMTIMER_FLAGS_NO_CRIT_SECT, 7940 7945 "E1000 Receive Interrupt Delay Timer", &pThis->hRIDTimer); 7941 7946 AssertRCReturn(rc, rc); 7942 7947 7943 7948 /* Create Receive Absolute Delay Timer */ 7944 rc = PDMDevHlpTimerCreate(pDevIns, TMCLOCK_VIRTUAL, e1kR xAbsDelayTimer, pThis, TMTIMER_FLAGS_NO_CRIT_SECT,7949 rc = PDMDevHlpTimerCreate(pDevIns, TMCLOCK_VIRTUAL, e1kR3RxIntDelayTimer, pThis, TMTIMER_FLAGS_NO_CRIT_SECT, 7945 7950 "E1000 Receive Absolute Delay Timer", &pThis->hRADTimer); 7946 7951 AssertRCReturn(rc, rc); … … 7948 7953 7949 7954 /* Create Late Interrupt Timer */ 7950 rc = PDMDevHlpTimerCreate(pDevIns, TMCLOCK_VIRTUAL, e1k LateIntTimer, pThis, TMTIMER_FLAGS_NO_CRIT_SECT,7955 rc = PDMDevHlpTimerCreate(pDevIns, TMCLOCK_VIRTUAL, e1kR3LateIntTimer, pThis, TMTIMER_FLAGS_NO_CRIT_SECT, 7951 7956 "E1000 Late Interrupt Timer", &pThis->hIntTimer); 7952 7957 AssertRCReturn(rc, rc); 7953 7958 7954 7959 /* Create Link Up Timer */ 7955 rc = PDMDevHlpTimerCreate(pDevIns, TMCLOCK_VIRTUAL, e1k LinkUpTimer, pThis, TMTIMER_FLAGS_NO_CRIT_SECT,7960 rc = PDMDevHlpTimerCreate(pDevIns, TMCLOCK_VIRTUAL, e1kR3LinkUpTimer, pThis, TMTIMER_FLAGS_NO_CRIT_SECT, 7956 7961 "E1000 Link Up Timer", &pThis->hLUTimer); 7957 7962 AssertRCReturn(rc, rc);
Note:
See TracChangeset
for help on using the changeset viewer.