Asus A8V hangs during pci probe on fresh-CURRENT

Ian Dowse iedowse at iedowse.com
Tue Oct 31 19:08:03 UTC 2006


In message <200610302227.52575.nb_root at videotron.ca>, Nicolas Blais writes:
>I saw that pci.c was updated today (to version 1.318) and I decided to give it
>a try. As expected, it did not work, so I kept my /usr/src in sync, but reverted pci.c to 1.292.2.9 and my system booted fine!
>
>By diff'ing with 1.315 
>(http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/dev/pci/pci.c.diff?f=H&r1=text&tr1=1.292.2.9&r2=text&tr2=1.315)  
>we can find there's obviously something in the vpd code that my system 
>doesn't like, or that the vpd code doesn't like something about my system ;).

FYI, jmg@ sent me the following patch that fixed a similar issue.
The thing in common between systems seeing this hang appears to be
that they have a Brooktree card installed. Seemingly, some Brooktree
cards have a PCI capability claiming VPD support, but the VPD data
is missing, which confuses the parser. One of the pci_read_vpd_reg()
calls then gets stuck when it tries to read from an invalid address.

Ian

Index: pci.c
===================================================================
RCS file: /dump/FreeBSD-CVS/src/sys/dev/pci/pci.c,v
retrieving revision 1.316
diff -u -r1.316 pci.c
--- pci.c	20 Oct 2006 21:28:11 -0000	1.316
+++ pci.c	31 Oct 2006 18:58:02 -0000
@@ -630,7 +630,9 @@
 				state = 5;
 				break;
 			default:	/* XXX - unimplemented */
-				state = 4;
+				end = 1;
+				cksumvalid = 0;
+				continue;
 				break;
 			}
 			break;




More information about the freebsd-current mailing list