tech-kern archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Include spdmem(4) in GENERIC amd64 & i386 kernels?



On Mon, 8 Dec 2008, Christoph Egger wrote:


I will need information about DIMMS, most certainly
size, physical start address and serial number
for pmem(9) I'm working on.

Hmmm. Size of DIMM is available from both dmidecode and spdmem. None of my memory modules have ever shown a valid serial number (this has been true for Corsair DDR2, Corsair DDR3, and Patriot DDR3, at least).

Physical address information probably has to be retrieved from the memory controller. I know spdmem/decode-dimms doesn't do this, and a cursory trip through dmicode output doesn't show it either (although maybe it's referred to by something that doesn't ring any bells).

Based on this, we can have in the future:

memory offlining, memory hotplugging, xen ballooning,
persistent dead-page list.

Sounds pretty ambitious - I look forward to seeing this!

A dead-page list is a list of pages marked as broken/defect.
Any access to it causes an immediate machine check fault.
Making it persistent means, the list is kept across reboots
- given the serial number didn't change.

Hmmm. I recently had a DDR3 DIMM go bad on me - it kept returning apparently random values for bit 0x40. By random, I mean that it returned 0 when it should be 0, 0 when it should be 1, 1 when it should be 0, or 1 when it should be 1! Not predictable, and no correlation to the values in adjacent bits. (This was the Partiot DDR3 which has been subesquently replaced with Corsair - no response yet from Patriot on what to do to "make good" on their "lifetime warranty".)

I suspect that this type of failure would render the entire DIMM as bad, and since this is dual-channel I suspect that it would result in both DIMMs being added to the dead-page list, effectively killing the whole machine. :) At the very least, with dual-channel you would have to reconfigure the memory controller to ignore one failed channel, and that would mandate a reboot, so persistence would certainly be required.


----------------------------------------------------------------------
|   Paul Goyette   | PGP DSS Key fingerprint: |  E-mail addresses:   |
| Customer Service | FA29 0E3B 35AF E8AE 6651 |  paul%whooppee.com@localhost   |
| Network Engineer | 0786 F758 55DE 53BA 7731 | pgoyette%juniper.net@localhost |
----------------------------------------------------------------------


Home | Main Index | Thread Index | Old Index