Changeset 107227 in vbox for trunk/src/VBox/VMM/VMMR3/DBGFMem.cpp
- Timestamp:
- Dec 4, 2024 3:20:14 PM (6 weeks ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMR3/DBGFMem.cpp
r106061 r107227 359 359 360 360 361 #if !defined(VBOX_VMM_TARGET_ARMV8)361 #ifdef VBOX_VMM_TARGET_X86 362 362 /** 363 363 * Worker for DBGFR3SelQueryInfo that calls into SELM. … … 409 409 return rc; 410 410 } 411 #endif 411 #endif /* VBOX_VMM_TARGET_X86 */ 412 412 413 413 … … 447 447 memset(pSelInfo, 0, sizeof(*pSelInfo)); 448 448 449 #if defined(VBOX_VMM_TARGET_ARMV8) 449 #ifdef VBOX_VMM_TARGET_X86 450 /* 451 * Dispatch the request to a worker running on the target CPU. 452 */ 453 return VMR3ReqPriorityCallWaitU(pUVM, idCpu, (PFNRT)dbgfR3SelQueryInfo, 5, pUVM, idCpu, Sel, fFlags, pSelInfo); 454 #else 450 455 RT_NOREF(Sel); 451 456 return VERR_NOT_SUPPORTED; 452 #else453 /*454 * Dispatch the request to a worker running on the target CPU.455 */456 return VMR3ReqPriorityCallWaitU(pUVM, idCpu, (PFNRT)dbgfR3SelQueryInfo, 5, pUVM, idCpu, Sel, fFlags, pSelInfo);457 457 #endif 458 458 } … … 496 496 497 497 498 #ifdef VBOX_WITH_HWVIRT 498 499 /** 499 500 * Converts a PGM paging mode to a set of DBGFPGDMP_XXX flags. … … 506 507 switch (enmMode) 507 508 { 508 # if !defined(VBOX_VMM_TARGET_ARMV8)509 # ifdef VBOX_VMM_TARGET_X86 509 510 case PGMMODE_32_BIT: 510 511 return DBGFPGDMP_FLAGS_PSE; … … 525 526 case PGMMODE_EPT: 526 527 return DBGFPGDMP_FLAGS_EPT; 528 529 # elif defined(VBOX_VMM_TARGET_ARM64) 530 /** @todo arm64: dumping page tables. */ 531 # else 532 # error "port me" 533 # endif 527 534 case PGMMODE_NONE: 528 535 return 0; 529 536 default: 530 537 AssertFailedReturn(UINT32_MAX); 531 #else 532 case PGMMODE_NONE: 533 return 0; 534 default: 535 AssertFailedReturn(UINT32_MAX); 536 #endif 537 } 538 } 538 } 539 } 540 #endif /* VBOX_WITH_HWVIRT */ 539 541 540 542 … … 586 588 return VINF_SUCCESS; 587 589 } 588 589 #if !defined(VBOX_VMM_TARGET_ARMV8) 590 #if defined(VBOX_WITH_HWVIRT) 590 591 if (fFlags & DBGFPGDMP_FLAGS_CURRENT_CR3) 591 592 cr3 = PGMGetHyperCR3(pVCpu); 592 #endif593 593 if (fFlags & DBGFPGDMP_FLAGS_CURRENT_MODE) 594 594 fFlags |= dbgfR3PagingDumpModeToFlags(PGMGetShadowMode(pVCpu)); 595 #else 596 pHlp->pfnPrintf(pHlp, "Expected shadowing mode PGMMODE_NONE, found %d!\n", PGMGetShadowMode(pVCpu)); 597 return VINF_SUCCESS; 598 #endif 595 599 } 596 600 else 597 601 { 598 #if defined(VBOX_VMM_TARGET_ARMV8) 599 AssertReleaseFailed(); 600 #else 602 #ifdef VBOX_VMM_TARGET_X86 601 603 if (fFlags & DBGFPGDMP_FLAGS_CURRENT_CR3) 602 604 cr3 = CPUMGetGuestCR3(pVCpu); … … 608 610 fFlags |= CPUMGetGuestEFER(pVCpu) & (MSR_K6_EFER_LME | MSR_K6_EFER_NXE); 609 611 } 612 #elif defined(VBOX_VMM_TARGET_ARMV8) 613 /** @todo arm64: port me */ 614 AssertReleaseFailed(); 615 return VERR_NOT_IMPLEMENTED; 616 #else 617 # error "port me" 610 618 #endif 611 619 } … … 645 653 uint64_t u64LastAddr, uint32_t cMaxDepth, PCDBGFINFOHLP pHlp) 646 654 { 655 /** @todo adjust this for ARMv8. Probably need two root parameters (instead of 656 * cr3) as well as a bunch new flags. */ 647 657 /* 648 658 * Input validation.
Note:
See TracChangeset
for help on using the changeset viewer.