Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 22 Feb 2013 22:34:15 +0200
From:      Konstantin Belousov <kostikbel@gmail.com>
To:        Nathan Whitehorn <nwhitehorn@freebsd.org>, Claude Buisson <clbuisson@orange.fr>
Cc:        freebsd-current@freebsd.org
Subject:   Re: DVD/CD lost after r246713
Message-ID:  <20130222203415.GR2598@kib.kiev.ua>
In-Reply-To: <5127A3DF.3060304@freebsd.org>
References:  <51265A58.4010600@orange.fr> <20130222082145.GJ2598@kib.kiev.ua> <51275FC7.9010906@orange.fr> <5127A3DF.3060304@freebsd.org>

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

--7aNskZ0IQd9Ag0jb
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Fri, Feb 22, 2013 at 10:59:11AM -0600, Nathan Whitehorn wrote:
> On 02/22/13 06:08, Claude Buisson wrote:
> > On 02/22/2013 09:21, Konstantin Belousov wrote:
> >
> > <skipped>
> >
> >> You need to provide the dmesg from r246713 and r246712 to compare.
> >> The note that r246711 snapshot exhibited this same problem makes
> >> me sceptical.
> >
> > Here are the verbose dmesg from r246712 and r246713;
> >
> > For the sceptical:
> >
> > root@fidel# cd /usr/src
> > root@fidel# grep "\$FreeBSD\:" sys/conf/files
> > # $FreeBSD: head/sys/conf/files 246586 2013-02-09 06:39:28Z delphij $
> > root@fidel# grep "\$FreeBSD\:" sys/ia64/ia64/dump_machdep.c
> > __FBSDID("$FreeBSD: head/sys/ia64/ia64/dump_machdep.c 246712 2013-02-12
> > 16:51:43Z marcel $");
> >
> > for r246712
> >
> > root@fidel# cd /usr/src
> > root@fidel# grep "\$FreeBSD\:" sys/conf/files
> > # $FreeBSD: head/sys/conf/files 246713 2013-02-12 16:57:20Z kib $
> > root@fidel# grep "\$FreeBSD\:" sys/ia64/include/proc.h
> >  * $FreeBSD: head/sys/ia64/include/proc.h 226112 2011-10-07 16:09:44Z=
=20
> > kib $
> >
> > for r246713
> >
> > The source is from svn0.us-east.freebsd.org
> >
> > And obj/ has been rm'ed before each buildkernel
> >
> > My own conclusion is that the rev number in:
> >
> > FreeBSD-10.0-HEAD-r246711-JPSNAP-i386-i386-memstick.img
> >
> > is bogus, and this can be easily checked by grepping for=20
> > kern/subr_bus_dma.c in
> > the BUILD.log as this file has been ADDED by r246713
> >
> > CBu (working on this since Tuesday)
>=20
> For whatever it is worth, I have experienced the identical problem on an=
=20
> amd64 system.

I see.
Could please, one of you try the following, which just a revert of
the r246713 for dev/ata ? I believe/hope that this should fix the
issue. Apply in the sys/dev/ata directory.

Index: ata-dma.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
--- ata-dma.c	(revision 246713)
+++ ata-dma.c	(revision 246712)
@@ -304,17 +304,10 @@ ata_dmaload(struct ata_request *request, void *add
     else
 	dspa.dmatab =3D request->dma->sg;
=20
-#ifdef ATA_CAM
-    if (request->ccb)
-        error =3D bus_dmamap_load_ccb(request->dma->data_tag,
-				request->dma->data_map, request->ccb,
-				ch->dma.setprd, &dspa, BUS_DMA_NOWAIT);
-    else
-#endif
-        error =3D bus_dmamap_load(request->dma->data_tag, request->dma->da=
ta_map,
-				request->data, request->bytecount,
-				ch->dma.setprd, &dspa, BUS_DMA_NOWAIT);
-    if (error || (error =3D dspa.error)) {
+    if ((error =3D bus_dmamap_load(request->dma->data_tag, request->dma->d=
ata_map,
+				 request->data, request->bytecount,
+				 ch->dma.setprd, &dspa, BUS_DMA_NOWAIT)) ||
+				 (error =3D dspa.error)) {
 	device_printf(request->parent, "FAILURE - load data\n");
 	goto error;
     }
Index: atapi-cam.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
--- atapi-cam.c	(revision 246713)
+++ atapi-cam.c	(revision 246712)
@@ -514,6 +514,12 @@ atapi_action(struct cam_sim *sim, union ccb *ccb)
 		("CAM CCB too long for ATAPI"));
 	    goto action_invalid;
 	}
+	if ((ccb_h->flags & CAM_SCATTER_VALID)) {
+	    /* scatter-gather not supported */
+	    xpt_print_path(ccb_h->path);
+	    printf("ATAPI/CAM does not support scatter-gather yet!\n");
+	    goto action_invalid;
+	}
=20
 	switch (ccb_h->flags & CAM_DIR_MASK) {
 	case CAM_DIR_IN:

--7aNskZ0IQd9Ag0jb
Content-Type: application/pgp-signature

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.19 (FreeBSD)

iQIcBAEBAgAGBQJRJ9ZGAAoJEJDCuSvBvK1BBaEQAIJBijjwNMQEtl57/0FaO2ry
F2tqW5QbFs4XUGKRPBzp2S8Ixxtu5LTSGcjW8D5SNIgUuxcnZCUByp1L8wODdEzX
jNwXQfgTgSDPFGfrBI+ef7wMPrSF2hzJ5oyXG4/NiYwq7DOai7kKNm4G12cwFH+a
VT7tVGfZqLWYIaSYJhixzp1Fr0UTFW3vBR59LgDpdUbNFRFYXO+THZlKLqnZJk9n
NU09kXf7RlRplzgPNlJbH/dJs65ZCYQcOrnMjwWbk+9EnpW8E7kv+JUlWoQqha6i
Fc4k81EyojULpFn+7jEpTKgDtvoRy5jXF5krCe+uylnp9UeFd+NJgCwmJt9fD2oE
rtCPHD5egritfZEhwQ6z5BEYn7w7SD4SgRADYc5cCPx0HRXO1tzS6Ce+oxSdTO+S
R1jlg1iuNKX2Y8P+v1Kc4jwVay2A+lQwjIM78Dms3zK4e4A+UMZABpwljxk1C/RC
Yw38jwEI3R7Sdwfnyjmj4LTsr5gHjc5SKYz/zWzu00BDQmxTYws0Fa541KnMM7LG
CZfSaM0SQvKqn4d+q8ElVguDyuDaZmWqAszZ4tcAqm2UOeJBdSxllNJ+MzltZCo6
YSYNu+ic4qmxojjlSlZ6cDkKzOsE4VC8C1tW2TC+OFULlB8ISoJqGLqrK5ChhEhE
/c8NoawmxfrvUzwu/XEf
=axq1
-----END PGP SIGNATURE-----

--7aNskZ0IQd9Ag0jb--



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