VirtualBox

Changeset 61621 in vbox for trunk


Ignore:
Timestamp:
Jun 9, 2016 12:19:28 PM (9 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
107965
Message:

DevEFI: Display the value of BugCheck* variables to get blue screen details in the log.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Devices/EFI/DevEFI.cpp

    r61042 r61621  
    692692        Log(("nvramWriteVariableOpAdd: Too many variabled.\n"));
    693693    }
     694
     695    /*
     696     * Log the value of bugcheck variables.
     697     */
     698    if (   (   pThis->NVRAM.VarOpBuf.cbValue == 4
     699            || pThis->NVRAM.VarOpBuf.cbValue == 8)
     700        && (   strcmp(pThis->NVRAM.VarOpBuf.szName, "BugCheckCode") == 0
     701            || strcmp(pThis->NVRAM.VarOpBuf.szName, "BugCheckParameter0") == 0
     702            || strcmp(pThis->NVRAM.VarOpBuf.szName, "BugCheckParameter1") == 0
     703            || strcmp(pThis->NVRAM.VarOpBuf.szName, "BugCheckParameter2") == 0
     704            || strcmp(pThis->NVRAM.VarOpBuf.szName, "BugCheckParameter3") == 0
     705            || strcmp(pThis->NVRAM.VarOpBuf.szName, "BugCheckProgress")   == 0 ) )
     706    {
     707        if (pThis->NVRAM.VarOpBuf.cbValue == 4)
     708            LogRel(("EFI: %RTuuid::'%s' = %#010RX32\n", &pThis->NVRAM.VarOpBuf.uuid, pThis->NVRAM.VarOpBuf.szName,
     709                    RT_MAKE_U32_FROM_U8(pThis->NVRAM.VarOpBuf.abValue[0], pThis->NVRAM.VarOpBuf.abValue[1],
     710                                        pThis->NVRAM.VarOpBuf.abValue[2], pThis->NVRAM.VarOpBuf.abValue[3])));
     711        else
     712            LogRel(("EFI: %RTuuid::'%s' = %#018RX64\n", &pThis->NVRAM.VarOpBuf.uuid, pThis->NVRAM.VarOpBuf.szName,
     713                    RT_MAKE_U64_FROM_U8(pThis->NVRAM.VarOpBuf.abValue[0], pThis->NVRAM.VarOpBuf.abValue[1],
     714                                        pThis->NVRAM.VarOpBuf.abValue[2], pThis->NVRAM.VarOpBuf.abValue[3],
     715                                        pThis->NVRAM.VarOpBuf.abValue[4], pThis->NVRAM.VarOpBuf.abValue[5],
     716                                        pThis->NVRAM.VarOpBuf.abValue[6], pThis->NVRAM.VarOpBuf.abValue[7])));
     717    }
     718
    694719
    695720    LogFunc(("cVariables=%u u32Status=%#x\n", pThis->NVRAM.cVariables, pThis->NVRAM.u32Status));
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette