Closed Bug 624703 Opened 10 years ago Closed 10 years ago

Add driver version to "App Notes" field of crash reports

Categories

(Core :: Graphics, defect)

x86
Windows 7
defect
Not set
normal

Tracking

()

VERIFIED FIXED

People

(Reporter: scoobidiver, Assigned: bjacob)

References

Details

Attachments

(1 file, 1 obsolete file)

In order to breakdown crashes by driver version (requirement from bug 623317), the driver version must be added in the "App Notes" field of crash reports the same way it has been done for AdapterVendor and AdapterID.
Blocks: 590373
Attachment #505480 - Flags: review?(jmuizelaar)
Comment on attachment 505480 [details] [diff] [review]
add driver version to crash report 'app notes'

Maybe just append instead of using appendprintf.
Attachment #505480 - Flags: review?(jmuizelaar) → review-
And replace AdapterDeviceID by AdapterDriverVersion
Attachment #505480 - Attachment is obsolete: true
Attachment #505541 - Flags: review?(jmuizelaar)
Attachment #505541 - Attachment is patch: true
Attachment #505541 - Attachment mime type: application/octet-stream → text/plain
Comment on attachment 505541 [details] [diff] [review]
add driver version to crash report 'app notes', updated

># HG changeset patch
># Parent 71978b294e3da60e7f01db9f9976a67c3e5062d1
>
>diff --git a/widget/src/windows/GfxInfo.cpp b/widget/src/windows/GfxInfo.cpp
>--- a/widget/src/windows/GfxInfo.cpp
>+++ b/widget/src/windows/GfxInfo.cpp
>@@ -375,34 +375,38 @@ GfxInfo::GetAdapterDeviceID(PRUint32 *aA
> }
> 
> void
> GfxInfo::AddCrashReportAnnotations()
> {
> #if defined(MOZ_CRASHREPORTER) && defined(MOZ_ENABLE_LIBXUL)
>   nsCAutoString deviceIDString, vendorIDString;
>   PRUint32 deviceID, vendorID;
>+  nsAutoString adapterDriverVersionString;
> 
>   GetAdapterDeviceID(&deviceID);
>   GetAdapterVendorID(&vendorID);
>+  GetAdapterDriverVersion(adapterDriverVersionString);
> 
>   deviceIDString.AppendPrintf("%04x", deviceID);
>   vendorIDString.AppendPrintf("%04x", vendorID);
> 
>   CrashReporter::AnnotateCrashReport(NS_LITERAL_CSTRING("AdapterVendorID"),
>       vendorIDString);
>   CrashReporter::AnnotateCrashReport(NS_LITERAL_CSTRING("AdapterDeviceID"),
>       deviceIDString);
>-
>+  
>   /* Add an App Note for now so that we get the data immediately. These
>    * can go away after we store the above in the socorro db */
>   nsCAutoString note;
>   /* AppendPrintf only supports 32 character strings, mrghh. */
>   note.AppendPrintf("AdapterVendorID: %04x, ", vendorID);
>-  note.AppendPrintf("AdapterDeviceID: %04x", deviceID);
>+  note.AppendPrintf("AdapterDeviceID: %04x, ", deviceID);
>+  note.AppendPrintf("AdapterDriverVersion: ");
>+  note.Append(NS_LossyConvertUTF16toASCII(adapterDriverVersionString));
> 
>   if (vendorID == 0) {
>       /* if we didn't find a valid vendorID lets append the mDeviceID string to try to find out why */
>       note.Append(", ");
>       note.AppendWithConversion(mDeviceID);
>       note.Append(", ");
>       note.AppendWithConversion(mDeviceKeyDebug);
>   }
Attachment #505541 - Flags: review?(jmuizelaar) → review+
Attachment #505541 - Flags: approval2.0+
http://hg.mozilla.org/mozilla-central/rev/46fb1e9436f3
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Assignee: nobody → bjacob
>+  note.Append(NS_LossyConvertUTF16toASCII(adapterDriverVersionString));

All the crashreporter notes are treated as UTF-8 strings everywhere last I checked, FWIW. (Probably doesn't really matter here.)
Verified in 20110121.

But I see some strange driver versions:
bp-e3c4de87-efca-495b-aff3-74e672110121: AdapterDriverVersion: 8.1.7.6 (see http://www.nvidia.com/object/quadro-winxp-x32-266.45-whql-driver.html)
bp-2e6fd832-593e-4b82-9011-a8f722110121: AdapterDriverVersion: (bug 600280)
bp-07b34cb5-8495-4744-bc7e-0187a2110121: AdapterDriverVersion: , , \Registry\Machine\System\CurrentControlSet\Control\Video\{23A77BF7-ED96-40EC-AF06-9B1F4867732A}\0000 (bug 600280?)
(In reply to comment #8)
> Verified in 20110121.
> 
> But I see some strange driver versions:
> bp-e3c4de87-efca-495b-aff3-74e672110121: AdapterDriverVersion: 8.1.7.6 (see
> http://www.nvidia.com/object/quadro-winxp-x32-266.45-whql-driver.html)

This one is an old driver from 2006, the DLL version is 6.14.10.8176. Apparently at that time the DriverVersion was just the 4 last digits of the DLL version... anyway, this crash will go away once we blacklist old drivers (bug 623338).

> bp-2e6fd832-593e-4b82-9011-a8f722110121: AdapterDriverVersion: (bug 600280)

Hm, here I see AdapterDriverVersion:  and nothing after it. Could be bug 600280.

> bp-07b34cb5-8495-4744-bc7e-0187a2110121: AdapterDriverVersion: , ,
> \Registry\Machine\System\CurrentControlSet\Control\Video\{23A77BF7-ED96-40EC-AF06-9B1F4867732A}\0000
> (bug 600280?)

Maybe, yeah.
Status: RESOLVED → VERIFIED
Depends on: 646097
No longer depends on: 646097
You need to log in before you can comment on or make changes to this bug.