Subject: hp700 boot-from-disk troubles
To: None <port-hp700@netbsd.org>
From: Chuck Silvers <chuq@chuq.com>
List: tech-kern
Date: 05/16/2005 07:50:27
hi folks,

I've found more problems with booting from disk on hp700.  it looks
like the same problem that we originally saw on the older machines is
still there on the newer machines, namely that in some kernels, the
scsipi_xfer pool gets corrupted.  as I recall, on older machines this
happened as part of the probing that happened while opening a disk
device, now it seems to happen after reading in the first few pages of
/sbin/init.  the nature of the corruption is that some bytes near the
memory being DMA'd become zero.  the one thing that I've found to
consistent avoid this problem is to add a cache line's worth of
padding to the end of scsipi_xfer.  does anyone have any ideas on how
to track this down?  I've tried lots of variations of cache flushing,
but all of them still fail occasionally.  with the above hack in
place, I can run for days accessing the disk with no problems.

I'll check in the above hack as a stop-gap unless someone can suggest
another way to make progress.

-Chuck