[lkml]   [2002]   [Jun]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
Subjectkernel ram testing
After a particularly odd experience with a duff dimm a few weeks ago* I
started thinking again about building continuous RAM testing into the kernel.

I've so far put together a little piece of code that regularly checksums
the kernel text (from _text to _etext). But now I have some questions:

1) _text and _etext seem to be defined differently on different
architectures (some don't define both). Ideally I think I'd like just
the kernel text in a way that can be extracted with objdump at build
time (so I can calculate the sum then for comparison). Suggestions on
whether _text and _etext are appropriate would be useful.

2) I want to test the rest of RAM as well - as much as possible,
repeatedly while the system is running. I could repeatedly allocate,
test and deallocate a page. But will I keep getting the same page
rather than circling through the rest of RAM? Can I ask for particular
physical pages portably?

3) I also want to test pages that are being used by the buffers and
processes; I'd really like to kick a page onto a different physical
page so I can test it - is this easily possible? (I could lock the
whole machine down, copy the page somewhere else and then test it, but
I fear this would take too long).

At the moment my code lives in a kernel thread (kintegrityd) that runs
and then sleeps for a while before running again (at lowest priority
above idle). (I'm presently fiddling with this under user mode linux

Thoughts and suggestions welcome.


(*) The DIMM appears, from memtest86, to have had an approximately 4MB
range where one bit in 32bits (or was it perhaps wider) was stuck low.
First noticed by a mismatch on md5sums of a downloaded debian package
and by ' characters appearing in an od I did of the corrupted package on
a machine that otherwise appeared stable.

---------------- Have a happy GNU millennium! ----------------------
/ Dr. David Alan Gilbert | Running GNU/Linux on Alpha,68K| Happy \
\ gro.gilbert @ | MIPS,x86,ARM, SPARC and HP-PA | In Hex /
\ _________________________|_____ |_______/
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
More majordomo info at
Please read the FAQ at

 \ /
  Last update: 2005-03-22 13:22    [W:0.040 / U:2.648 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site