Toni Mueller <[email protected]> wrote:

Hi Toni,

>> There are two reasons why this message can appear, so could you
>> instrument memdb.c:prefill_memdb() to distinguish between parse errors
>   ^^^^^^^^^^
>
> maybe, if I figure out what that means, or if you explain it to me. ;|
>
> So far, I understand: Compile with debugging symbols and run the
> unstripped code under a debugger. Correct?

No, just adding a pair of log statements where the missed++ happens so
you can know what case triggered.

Apply the attached patch and rebuild mcelog, install the package and
restart the daemon; you should get some more output to syslog.

JB.

-- 
 Julien BLACHE <[email protected]>  |  Debian, because code matters more 
 Debian & GNU/Linux Developer        |       <http://www.debian.org>
 Public key available on <http://www.jblache.org> - KeyID: F5D6 5169 
 GPG Fingerprint : 935A 79F1 C8B3 3521 FD62 7CC7 CD61 4FD7 F5D6 5169 

Description: Upstream changes introduced in version 1.0~pre3-3
 This patch has been created by dpkg-source during the package build.
 Here's the last changelog entry, hopefully it gives details on why
 those changes were made:
 .
 mcelog (1.0~pre3-3) unstable; urgency=low
 .
   * debian/patches/fix_timeout_bit.patch:
     + Added; fix interpretation of the timeout bit (closes: #587365).
 .
 The person named in the Author field signed this changelog entry.
Author: Julien BLACHE <[email protected]>
Bug-Debian: http://bugs.debian.org/587365

---
The information above should follow the Patch Tagging Guidelines, please
checkout http://dep.debian.net/deps/dep3/ to learn about the format. Here
are templates for supplementary fields that you might want to add:

Origin: <vendor|upstream|other>, <url of original patch>
Bug: <url in upstream bugtracker>
Bug-Debian: http://bugs.debian.org/<bugnumber>
Bug-Ubuntu: https://launchpad.net/bugs/<bugnumber>
Forwarded: <no|not-needed|url proving that it has been forwarded>
Reviewed-By: <name and email of someone who approved the patch>
Last-Update: <YYYY-MM-DD>

--- mcelog-1.0~pre3.orig/memdb.c
+++ mcelog-1.0~pre3/memdb.c
@@ -375,6 +375,8 @@ void prefill_memdb(void)
 				"_Node%u_Channel%u_Dimm%u", &socketid, 
 					&channel, &dimm) != 3) {
 			missed++;
+
+			Eprintf("Failed to parse DMI data");
 			continue;
 		}
 
@@ -382,6 +384,9 @@ void prefill_memdb(void)
 		if (md->memdev) { 
 			/* dups -- likely parse error */
 			missed++;
+
+			Eprintf("Duplicate entry?!");
+
 			continue;
 		}
 		md->memdev = d;

Reply via email to