Changeset 90503 in vbox for trunk/src/VBox/ValidationKit/bootsectors
- Timestamp:
- Aug 3, 2021 9:22:13 PM (3 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/ValidationKit/bootsectors/bs3-locking-1.c
r90474 r90503 42 42 const char * BS3_FAR pszName; 43 43 uint32_t cInnerLoops; 44 uint32_t uCtrlWord; 44 uint32_t uCtrlLo; 45 uint32_t uCtrlHi; 45 46 } g_aLockingTests[] = 46 47 { 47 48 { 48 "Contention 500us/250us ",49 "Contention 500us/250us/64k", 49 50 2000 + 16384, 50 500 | (UINT32_C(250) << VMMDEV_TESTING_LOCKED_WAIT_SHIFT) 51 500 | (UINT32_C(250) << VMMDEV_TESTING_LOCKED_LO_WAIT_SHIFT), 52 64 | VMMDEV_TESTING_LOCKED_HI_ENABLED, 51 53 }, 52 54 { 53 "Contention 100us/50us ",55 "Contention 100us/50us/8k", 54 56 10000 + 4096, 55 100 | (UINT32_C(50) << VMMDEV_TESTING_LOCKED_WAIT_SHIFT) 57 100 | (UINT32_C(50) << VMMDEV_TESTING_LOCKED_LO_WAIT_SHIFT), 58 8 | VMMDEV_TESTING_LOCKED_HI_ENABLED, 56 59 }, 57 60 { 58 "Contention 500us/250us poke", 59 2000 + 16384, 60 500 | (UINT32_C(250) << VMMDEV_TESTING_LOCKED_WAIT_SHIFT) | VMMDEV_TESTING_LOCKED_POKE 61 "Contention 10us/1us/0k", 62 16384 + 4096, 63 10 | (UINT32_C(1) << VMMDEV_TESTING_LOCKED_LO_WAIT_SHIFT), 64 0 | VMMDEV_TESTING_LOCKED_HI_ENABLED, 61 65 }, 62 66 { 63 "Contention 100us/50us poke", 64 10000 + 4096, 65 100 | (UINT32_C(50) << VMMDEV_TESTING_LOCKED_WAIT_SHIFT) | VMMDEV_TESTING_LOCKED_POKE 67 "Contention 500us/250us/64k poke", 68 2000 + 16384, 69 500 | (UINT32_C(250) << VMMDEV_TESTING_LOCKED_LO_WAIT_SHIFT), 70 64 | VMMDEV_TESTING_LOCKED_HI_ENABLED | VMMDEV_TESTING_LOCKED_HI_POKE, 66 71 }, 67 72 { 68 "Contention 500us/250us poke void", 69 2000 + 16384, 70 500 | (UINT32_C(250) << VMMDEV_TESTING_LOCKED_WAIT_SHIFT) | VMMDEV_TESTING_LOCKED_POKE | VMMDEV_TESTING_LOCKED_BUSY_SUCCESS 73 "Contention 100us/50us/1k poke", 74 10000 + 4096, 75 100 | (UINT32_C(50) << VMMDEV_TESTING_LOCKED_LO_WAIT_SHIFT), 76 1 | VMMDEV_TESTING_LOCKED_HI_ENABLED | VMMDEV_TESTING_LOCKED_HI_POKE, 71 77 }, 72 78 { 73 "Contention 50us/25us poke void", 79 "Contention 500us/250us/64k poke void", 80 2000 + 16384, 81 500 | (UINT32_C(250) << VMMDEV_TESTING_LOCKED_LO_WAIT_SHIFT), 82 64 | VMMDEV_TESTING_LOCKED_HI_POKE | VMMDEV_TESTING_LOCKED_HI_BUSY_SUCCESS 83 }, 84 { 85 "Contention 50us/25us/8k poke void", 74 86 20000 + 4096, 75 50 | (UINT32_C(25) << VMMDEV_TESTING_LOCKED_WAIT_SHIFT) | VMMDEV_TESTING_LOCKED_POKE | VMMDEV_TESTING_LOCKED_BUSY_SUCCESS 87 50 | (UINT32_C(25) << VMMDEV_TESTING_LOCKED_LO_WAIT_SHIFT), 88 1 | VMMDEV_TESTING_LOCKED_HI_POKE | VMMDEV_TESTING_LOCKED_HI_BUSY_SUCCESS 76 89 }, 77 90 }; … … 98 111 99 112 Bs3TestSub(g_aLockingTests[i].pszName); 100 ASMOutU32(VMMDEV_TESTING_IOPORT_LOCKED, g_aLockingTests[i].uCtrlWord); 113 ASMOutU32(VMMDEV_TESTING_IOPORT_LOCKED_LO, g_aLockingTests[i].uCtrlLo); 114 ASMOutU32(VMMDEV_TESTING_IOPORT_LOCKED_HI, g_aLockingTests[i].uCtrlHi); 101 115 102 116 for (j = 0; j < _2M && cTotal < _1G; j++) … … 107 121 cTotal += iInner; 108 122 while (iInner-- > 0) 109 ASMInU32(VMMDEV_TESTING_IOPORT_LOCKED );123 ASMInU32(VMMDEV_TESTING_IOPORT_LOCKED_LO); 110 124 111 125 cNsElapsed = Bs3TestNow() - nsStart; … … 115 129 116 130 /* Disable locking. */ 117 ASMOutU32(VMMDEV_TESTING_IOPORT_LOCKED , 0);131 ASMOutU32(VMMDEV_TESTING_IOPORT_LOCKED_HI, 0); 118 132 119 133 Bs3TestValue("Loops", cTotal, VMMDEV_TESTING_UNIT_OCCURRENCES);
Note:
See TracChangeset
for help on using the changeset viewer.