VirtualBox

Changeset 87893 in vbox


Ignore:
Timestamp:
Mar 1, 2021 7:43:35 AM (4 years ago)
Author:
vboxsync
Message:

AMD IOMMU: bugref:9654 SSM bits.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Devices/Bus/DevIommuAmd.cpp

    r87881 r87893  
    62966296    AssertLogRelMsgReturn(cDevTabBaseAddrs > 0 && cDevTabBaseAddrs <= RT_ELEMENTS(pThis->aDevTabBaseAddrs),
    62976297                          ("Device table segment count invalid %#x\n", cDevTabBaseAddrs), rcErr);
     6298    AssertCompile(RT_ELEMENTS(pThis->aDevTabBaseAddrs) == RT_ELEMENTS(g_auDevTabSegMaxSizes));
    62986299    for (uint8_t i = 0; i < cDevTabBaseAddrs; i++)
    62996300    {
     
    63016302        AssertRCReturn(rc, rc);
    63026303        pThis->aDevTabBaseAddrs[i].u64 &= IOMMU_DEV_TAB_BAR_VALID_MASK;
    6303         AssertLogRelMsgReturn(pThis->aDevTabBaseAddrs[i].n.u9Size <= g_auDevTabSegMaxSizes[0],
    6304                               ("Device table segment size invalid %#x\n", pThis->aDevTabBaseAddrs[i].n.u9Size), rcErr);
     6304        uint16_t const uSegSize    = pThis->aDevTabBaseAddrs[i].n.u9Size;
     6305        uint16_t const uMaxSegSize = g_auDevTabSegMaxSizes[i];
     6306        AssertLogRelMsgReturn(uSegSize <= uMaxSegSize,
     6307                              ("Device table segment size invalid %u (max %u)\n", uSegSize, uMaxSegSize), rcErr);
    63056308    }
    63066309
     
    64096412    }
    64106413
    6411     /* MARC (Memory access and routing) registers. */
     6414    /* MARC (Memory Access and Routing) registers. */
    64126415    {
    64136416        uint8_t cMarcApers;
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