Subject: Re: CCISS support, anyone?
To: None <tech-kern@netbsd.org>
From: Tonnerre LOMBARD <tonnerre@thebsh.sygroup.ch>
List: tech-kern
Date: 03/09/2006 16:37:53
--lrvsYIebpInmECXG
Content-Type: text/plain; charset=iso-8859-1
Content-Disposition: inline

Salut,

On Mon, Mar 06, 2006 at 05:54:27PM +0100, Tonnerre LOMBARD wrote:
> To everyone who wants to give it a try, I have a small patch here, and I
> seriously hope it's complete.

Ok, I could use some help here. I am encountering a really bizarre situation:

In line 222 of dev/ic/ciss.c, we load a DMA map which is sc->ccblen bytes
for each possible command (sc->maxcmd * sc->ccblen). Then, from line 235
on, we iterate over the ccbs and fill them with a lot of meaningful stuff.
However, at the 6th iteration or so (with sc->maxcmd == 1024!), I get the
following:

uvm_fault(0xc052bc60, 0xcb424000 (ccb), 0, 2) -> 0xe
kernel: page fault trap, code=0
Stopped in pid 0.1 (swapper) at netbsd:ciss_attach+0x3f5: mov %eax,0x8(%ebx)

This is exactly the move instruction which belongs to

                ccb->ccb_sc = sc;

in line 240.

How would this happen, given the fact that the total length of the array
is supposed to be 524288 bytes, and sc->maxcmd of 1024 bytes?

				Tonnerre

--lrvsYIebpInmECXG
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.2.1 (NetBSD)

iQIVAwUBRBBL0O1mMGan/TnWAQIqFA//WmjtaxoCuCkrVnHSXlK23EoWF79lUS3l
beuLV2Nq/X6VoZKELWITsm9+y8CSJG2H+hCBhYTQPoDAWuZy3oKBMkNkD3vTQSl5
Ze7hRx8z1DySqJaxAEFvaDcOoyo9dUcloG9PVvrEnygr261clGd6BJunK/DBqLc5
h/2l+UvMcYtfyKv3vLmw8mFr7FlGx5vz3mUV/+AMpag37AFUPwX/nYN9EyiX4xFB
8pvgaBFa7U9q7vjZjOu+gLygFtgcn1cZgj4zdreSJdrUyNrJF6nvmwgheBTR64Ok
p5dsWzx8AQNr32cGjqLUT+HmFG/dnrbzkEQiQd10vJPampjaBUE5Y5MKPtwERJKr
lK3XBLwqX5ULRYXyMmTaXLqoVCnUqm9VMOV81Y37amyrBa2if8/HWe7+8UaGH5gR
OqJNs/x4enRcp9PwvK+Vn3egwS9h0zulnKtLZr4hDTC0wFjWUhpzV7rQ42/RAtOp
/Zi9oT4uvGHly/gDYTllCeXOI1vdRfTwV0N/gPfFoYO/JDA4zfXZBI7hDyqTgvoD
bKHZ08jsHr3h8YCpCvx+1D8rwAL5AKIVIUxPmREIjGCzFW1xyku4RM2fx4mqcFEh
SJGQbTkqadLedtnLMnmfws6qS6C/7SyaLOCFlJ5TqMClj3jjTjwtwmNi0LPxvOL5
vDe9Tr3z5+Q=
=GMt3
-----END PGP SIGNATURE-----

--lrvsYIebpInmECXG--