VirtualBox

Changeset 91308 in vbox


Ignore:
Timestamp:
Sep 17, 2021 9:35:52 PM (3 years ago)
Author:
vboxsync
Message:

VMM/CPUM: Comments/todos for some big CPUMCTX members. bugref:10093

Location:
trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/VBox/vmm/cpumctx.h

    r91307 r91308  
    506506                 * This need not be physically contiguous pages because we use the one from
    507507                 * HMPHYSCPU while executing the nested-guest using hardware-assisted SVM.
    508                  * This one is just used for caching the bitmap from guest physical memory. */
     508                 * This one is just used for caching the bitmap from guest physical memory.
     509                 *
     510                 * @todo r=bird: This is not used directly by AMD-V hardware, so it doesn't
     511                 *       really need to even be page aligned.
     512                 *
     513                 *       Also, couldn't we just access the guest page directly when we need to,
     514                 *       or do we have to use a cached copy of it? */
    509515                uint8_t                 abMsrBitmap[SVM_MSRPM_PAGES * X86_PAGE_SIZE];
    510516                /** 0x7000 - The IOPM (IO Permission bitmap).
     
    515521                 *
    516522                 * This one is just used for caching the IOPM from guest physical memory in
    517                  * case the guest hypervisor allows direct access to some IO ports. */
     523                 * case the guest hypervisor allows direct access to some IO ports.
     524                 *
     525                 * @todo r=bird: This is not used directly by AMD-V hardware, so it doesn't
     526                 *       really need to even be page aligned.
     527                 *
     528                 *       Also, couldn't we just access the guest page directly when we need to,
     529                 *       or do we have to use a cached copy of it? */
    518530                uint8_t                 abIoBitmap[SVM_IOPM_PAGES * X86_PAGE_SIZE];
    519531
     
    543555                /** 0X5000 - The shadow VMCS. */
    544556                VMXVVMCS                ShadowVmcs;
    545                 /** 0x6000 - The VMREAD bitmap. */
     557                /** 0x6000 - The VMREAD bitmap.
     558                 * @todo r=bird: Do we really need to keep copies for these?  Couldn't we just
     559                 *       access the guest memory directly as needed?   */
    546560                uint8_t                 abVmreadBitmap[VMX_V_VMREAD_VMWRITE_BITMAP_SIZE];
    547                 /** 0x7000 - The VMWRITE bitmap. */
     561                /** 0x7000 - The VMWRITE bitmap.
     562                 * @todo r=bird: Do we really need to keep copies for these?  Couldn't we just
     563                 *       access the guest memory directly as needed?  */
    548564                uint8_t                 abVmwriteBitmap[VMX_V_VMREAD_VMWRITE_BITMAP_SIZE];
    549565                /** 0x8000 - The VM-entry MSR-load area. */
     
    553569                /** 0xc000 - The VM-exit MSR-load area. */
    554570                VMXAUTOMSR              aExitMsrLoadArea[VMX_V_AUTOMSR_AREA_SIZE / sizeof(VMXAUTOMSR)];
    555                 /** 0xe000 - The MSR permission bitmap. */
     571                /** 0xe000 - The MSR permission bitmap.
     572                 * @todo r=bird: Do we really need to keep copies for these?  Couldn't we just
     573                 *       access the guest memory directly as needed?  */
    556574                uint8_t                 abMsrBitmap[VMX_V_MSR_BITMAP_SIZE];
    557                 /** 0xf000 - The I/O permission bitmap. */
     575                /** 0xf000 - The I/O permission bitmap.
     576                 * @todo r=bird: Do we really need to keep copies for these?  Couldn't we just
     577                 *       access the guest memory directly as needed? */
    558578                uint8_t                 abIoBitmap[VMX_V_IO_BITMAP_A_SIZE + VMX_V_IO_BITMAP_B_SIZE];
    559579                /** 0x11000 - The virtual-APIC page.
  • trunk/src/VBox/VMM/VMMR0/HMSVMR0.cpp

    r91291 r91308  
    24902490}
    24912491
    2492 
    24932492#ifdef VBOX_WITH_NESTED_HWVIRT_SVM
     2493
    24942494/**
    24952495 * Merges the guest and nested-guest MSR permission bitmap.
     
    26052605        pVCpu->hmr0.s.svm.fSyncVTpr = false;
    26062606
    2607 #ifdef DEBUG_ramshankar
     2607# ifdef DEBUG_ramshankar
    26082608        /* For debugging purposes - copy the LBR info. from outer guest VMCB. */
    26092609        pVmcbNstGstCtrl->LbrVirt.n.u1LbrVirt = pVmcb->ctrl.LbrVirt.n.u1LbrVirt;
    2610 #endif
     2610# endif
    26112611
    26122612        /*
     
    26402640    }
    26412641}
     2642
    26422643#endif /* VBOX_WITH_NESTED_HWVIRT_SVM */
    2643 
    26442644
    26452645/**
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