Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 26 Oct 2006 11:18:54 +0200
From:      Thomas Quinot <thomas@FreeBSD.ORG>
To:        Benjamin Lutz <mail@maxlor.com>
Cc:        freebsd-stable@freebsd.org
Subject:   Re: atapicam problem
Message-ID:  <20061026091854.GB31681@melamine.cuivre.fr.eu.org>
In-Reply-To: <200610161317.18955.mail@maxlor.com>
References:  <200610112130.21391.mail@maxlor.com> <20061015224036.GB28053@melamine.cuivre.fr.eu.org> <200610161317.18955.mail@maxlor.com>

next in thread | previous in thread | raw e-mail | index | archive | help

--5/uDoXvLw7AC5HRs
Content-Type: multipart/mixed; boundary="k+w/mQv8wyuph6w0"
Content-Disposition: inline


--k+w/mQv8wyuph6w0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

* Benjamin Lutz, 2006-10-16 :

> Well, I'm having problems with that. I built a new kernel with all the=20
> CAM debugging options enabled (otherwise it's GENERIC), but this one=20
> would panic as soon as I load the atapicam module if I load it=20
> manually, or as soon as drive detection starts if the boot loader loads=
=20
> it. I've had a look at the dump with kgdb, and it appears that a=20
> null-dereference happens in line 4205 of sys/cam/cam_xpt.c: path2 is=20
> NULL.

OK, sorry for the delay, can you apply the attached patch and try again?

Thomas.


--k+w/mQv8wyuph6w0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment; filename=d
Content-Transfer-Encoding: quoted-printable

Index: cam_xpt.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
RCS file: /space/mirror/ncvs/src/sys/cam/cam_xpt.c,v
retrieving revision 1.155.2.8
diff -u -r1.155.2.8 cam_xpt.c
--- cam_xpt.c	23 Sep 2006 18:42:08 -0000	1.155.2.8
+++ cam_xpt.c	26 Oct 2006 09:16:07 -0000
@@ -4202,6 +4202,9 @@
=20
 	int retval =3D 0;
=20
+	if (path1 =3D=3D NULL || path2 =3D=3D NULL)
+		return (-1);
+
 	if (path1->bus !=3D path2->bus) {
 		if (path1->bus->path_id =3D=3D CAM_BUS_WILDCARD)
 			retval =3D 1;

--k+w/mQv8wyuph6w0--

--5/uDoXvLw7AC5HRs
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.4 (FreeBSD)

iD8DBQFFQH19AE1UuDk9JGkRAq6dAJsGk/LrOfSOry7PVmxcziEcIfUsOwCdHtDN
am75Ykpg44uAfiQ3DHhodQQ=
=tggm
-----END PGP SIGNATURE-----

--5/uDoXvLw7AC5HRs--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20061026091854.GB31681>