Just some ideas to help you...
You mentioned 2 IMHO _main_ facts:
- using aic7xxx driven SCSI devices
- _very_ busy server
Please try to configure tag queue depth down to below 5
for all scsi devices _and_ don't use the actual > 5.0.13 aic7xxx driver!
You can fetch 5.0.13 from kernel 2.1.102 for egg.
BTW: you can limit queue depth with lilo's append like
append = "aic7xxx=tag_info:{{4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4}}"
Please try a patch in /usr/src/linux/fs/buffer.c in function grow_buffers()
which _really_ limits the size of the buffer cache.
(yes i know that some people say this isn't stable too, but for me
it runs and runs and ...)
A simple testhack can be:
if ( buffermem > BufferMemSizeInBytes) return 0;
at the top of grow_buffers().
Replace BufferMemSizeInBytes with the value you like.
With your RAM size start please start with 64*1024*1024.
I used the first one, because aic7xxx even crashes a single processor
system with queue depth > 4 on a busy system.
The second one avoided instability and _really_ bad performance, because
the actual buffer code doeen't recognize the limits given in
/proc/sys/vm/buffermem and then runs into trouble for sure!
Tell me about (i hope) your success.
Best regards,
Heinz
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Systemmanagement Entwicklungsbereich 2 Deutsche Telekom AG Entwicklungszentrum Darmstadt Heinz Mauelshagen Otto-Roehm-Strasse 71c Postfach 10 05 41 mge@ez-darmstadt.telekom.de 64205 Darmstadt Germany +49 6151 886-425 FAX-386 =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu