Bug 678030. gfxinfo: Report subsys ids in crashes. r=ajuma,bjacob

The hope is that this will be useful for identifying OEMs that
are blocking driver updates. try: -b do -p win32 -u all -t none
This commit is contained in:
Jeff Muizelaar 2011-08-20 19:01:13 -04:00
Родитель b996f9738f
Коммит f6d1855be8
2 изменённых файлов: 6 добавлений и 0 удалений

Просмотреть файл

@ -475,6 +475,8 @@ GfxInfo::Init()
mAdapterVendorID2 = ParseIDFromDeviceID(mDeviceID2, "VEN_", 4); mAdapterVendorID2 = ParseIDFromDeviceID(mDeviceID2, "VEN_", 4);
mAdapterDeviceID = ParseIDFromDeviceID(mDeviceID, "&DEV_", 4); mAdapterDeviceID = ParseIDFromDeviceID(mDeviceID, "&DEV_", 4);
mAdapterDeviceID2 = ParseIDFromDeviceID(mDeviceID2, "&DEV_", 4); mAdapterDeviceID2 = ParseIDFromDeviceID(mDeviceID2, "&DEV_", 4);
mAdapterSubsysID = ParseIDFromDeviceID(mDeviceID, "&SUBSYS_", 8);
mAdapterSubsysID2 = ParseIDFromDeviceID(mDeviceID2, "&SUBSYS_", 8);
const char *spoofedDriverVersionString = PR_GetEnv("MOZ_GFX_SPOOF_DRIVER_VERSION"); const char *spoofedDriverVersionString = PR_GetEnv("MOZ_GFX_SPOOF_DRIVER_VERSION");
if (spoofedDriverVersionString) { if (spoofedDriverVersionString) {
@ -695,6 +697,7 @@ GfxInfo::AddCrashReportAnnotations()
/* AppendPrintf only supports 32 character strings, mrghh. */ /* AppendPrintf only supports 32 character strings, mrghh. */
note.AppendPrintf("AdapterVendorID: %04x, ", vendorID); note.AppendPrintf("AdapterVendorID: %04x, ", vendorID);
note.AppendPrintf("AdapterDeviceID: %04x, ", deviceID); note.AppendPrintf("AdapterDeviceID: %04x, ", deviceID);
note.AppendPrintf("AdapterSubsysID: %08x, ", mAdapterSubsysID);
note.AppendPrintf("AdapterDriverVersion: "); note.AppendPrintf("AdapterDriverVersion: ");
note.Append(NS_LossyConvertUTF16toASCII(adapterDriverVersionString)); note.Append(NS_LossyConvertUTF16toASCII(adapterDriverVersionString));
@ -717,6 +720,7 @@ GfxInfo::AddCrashReportAnnotations()
GetAdapterDriverVersion2(adapterDriverVersionString2); GetAdapterDriverVersion2(adapterDriverVersionString2);
note.AppendPrintf("AdapterVendorID2: %04x, ", vendorID2); note.AppendPrintf("AdapterVendorID2: %04x, ", vendorID2);
note.AppendPrintf("AdapterDeviceID2: %04x, ", deviceID2); note.AppendPrintf("AdapterDeviceID2: %04x, ", deviceID2);
note.AppendPrintf("AdapterSubsysID2: %08x, ", mAdapterSubsysID2);
note.AppendPrintf("AdapterDriverVersion2: "); note.AppendPrintf("AdapterDriverVersion2: ");
note.Append(NS_LossyConvertUTF16toASCII(adapterDriverVersionString2)); note.Append(NS_LossyConvertUTF16toASCII(adapterDriverVersionString2));
} }

Просмотреть файл

@ -102,6 +102,7 @@ private:
nsString mDeviceKeyDebug; nsString mDeviceKeyDebug;
PRUint32 mAdapterVendorID; PRUint32 mAdapterVendorID;
PRUint32 mAdapterDeviceID; PRUint32 mAdapterDeviceID;
PRUint32 mAdapterSubsysID;
nsString mDeviceString2; nsString mDeviceString2;
nsString mDriverVersion2; nsString mDriverVersion2;
nsString mDeviceID2; nsString mDeviceID2;
@ -109,6 +110,7 @@ private:
nsString mDeviceKey2; nsString mDeviceKey2;
PRUint32 mAdapterVendorID2; PRUint32 mAdapterVendorID2;
PRUint32 mAdapterDeviceID2; PRUint32 mAdapterDeviceID2;
PRUint32 mAdapterSubsysID2;
PRUint32 mWindowsVersion; PRUint32 mWindowsVersion;
PRBool mHasDualGPU; PRBool mHasDualGPU;
PRBool mIsGPU2Active; PRBool mIsGPU2Active;