VirtualBox

Changeset 1859 in vbox for trunk/src/VBox/VMM


Ignore:
Timestamp:
Apr 2, 2007 2:08:55 PM (18 years ago)
Author:
vboxsync
Message:

updated scan beyond ret instruction code

Location:
trunk/src/VBox/VMM/PATM
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/VMM/PATM/CSAM.cpp

    r1833 r1859  
    6363/* Enable to monitor all scanned pages
    6464#define CSAM_MONITOR_CSAM_CODE_PAGES */
     65/* Enable to scan beyond ret instructions. 
     66#define CSAM_ANALYSE_BEYOND_RET */
    6567
    6668/*******************************************************************************
     
    958960                {
    959961                case OP_NOP:
     962                case OP_INT3:
    960963                    break;  /* acceptable */
    961964
     
    20902093        CSAMP2GLOOKUPREC cacheRec = {0};
    20912094
     2095if ((pInstrGC >> 24) == 0xf8
     2096    && (pInstrGC & 0xfff) == 0) _asm int 3;
     2097
    20922098        STAM_PROFILE_START(&pVM->csam.s.StatTime, a);
    20932099        rc = csamAnalyseCallCodeStream(pVM, pInstrGC, pInstrGC, true /* 32 bits code */, CSAMR3AnalyseCallback, pPage, &cacheRec);
     
    21652171
    21662172        Log(("csamR3FlushCodePages: %VGv\n", GCPtr));
     2173        PGMShwSetPage(pVM, GCPtr, 1, 0);
    21672174        /* Resync the page to make sure instruction fetch will fault */
    21682175        CSAMMarkPage(pVM, GCPtr, false);
    2169         PGMInvalidatePage(pVM, GCPtr);
    2170         PGMPrefetchPage(pVM, GCPtr);
    2171 
    2172         CSAMMarkPage(pVM, GCPtr, true);
     2176//        PGMInvalidatePage(pVM, GCPtr);
     2177/////        PGMPrefetchPage(pVM, GCPtr);
     2178
     2179/////        CSAMMarkPage(pVM, GCPtr, true);
    21732180    }
    21742181    pVM->csam.s.cPossibleCodePages = 0;
  • trunk/src/VBox/VMM/PATM/CSAMInternal.h

    r1837 r1859  
    186186    /* Set when the IDT gates have been checked for the first time. */
    187187    bool                fGatesChecked;
    188     bool                Alignment1[HC_ARCH_BITS == 32 ? 4 : 6]; /**< Align the stats on an 8-byte boundrary. */
     188    bool                Alignment1[2];
     189//    bool                Alignment1[HC_ARCH_BITS == 32 ? 4 : 6]; /**< Align the stats on an 8-byte boundrary. */
    189190
    190191    STAMCOUNTER         StatNrTraps;
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