From nobody@FreeBSD.org  Sat May 14 13:12:58 2005
Return-Path: <nobody@FreeBSD.org>
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP id A39EB16A556
	for <freebsd-gnats-submit@FreeBSD.org>; Sat, 14 May 2005 13:12:57 +0000 (GMT)
Received: from www.freebsd.org (www.freebsd.org [216.136.204.117])
	by mx1.FreeBSD.org (Postfix) with ESMTP id 82B5F43D1F
	for <freebsd-gnats-submit@FreeBSD.org>; Sat, 14 May 2005 13:12:57 +0000 (GMT)
	(envelope-from nobody@FreeBSD.org)
Received: from www.freebsd.org (localhost [127.0.0.1])
	by www.freebsd.org (8.13.1/8.13.1) with ESMTP id j4EDCufF058192
	for <freebsd-gnats-submit@FreeBSD.org>; Sat, 14 May 2005 13:12:56 GMT
	(envelope-from nobody@www.freebsd.org)
Received: (from nobody@localhost)
	by www.freebsd.org (8.13.1/8.13.1/Submit) id j4EDCuGl058191;
	Sat, 14 May 2005 13:12:56 GMT
	(envelope-from nobody)
Message-Id: <200505141312.j4EDCuGl058191@www.freebsd.org>
Date: Sat, 14 May 2005 13:12:56 GMT
From: Andrey Sverdlichenko <blaze@rudy.ru>
To: freebsd-gnats-submit@FreeBSD.org
Subject: System locks up during PCI devices initialization
X-Send-Pr-Version: www-2.3

>Number:         81015
>Category:       kern
>Synopsis:       [workaround] System locks up during PCI devices initialization
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-bugs
>State:          closed
>Quarter:        
>Keywords:       
>Date-Required:  
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Sat May 14 13:20:02 GMT 2005
>Closed-Date:    Fri Apr 22 20:20:29 UTC 2011
>Last-Modified:  Fri Apr 22 20:20:29 UTC 2011
>Originator:     Andrey Sverdlichenko
>Release:        5.3-RELEASE, 5.4-RELEASE
>Organization:
>Environment:
FreeBSD lsd.infosec.ru 5.4-RELEASE FreeBSD 5.4-RELEASE #4: Fri May 13 18:14:44 MSK 2005 root@lsd.infosec.ru:/usr/src/sys/i386/compile/LSD  i386
>Description:
On Acer TravelMate 5020 notebook, Toshiba A50-111 notebook and possibly other 855GME-based notebooks kernel locks up during PCI devices initialization. Nothing works, except power button.
Looks like kernel tries to initalize second video chip and something goes wrong here. I'm not even sure there is any second video chip in chipset.
>How-To-Repeat:
Simply try to install FreeBSD on this notebooks.
>Fix:
This is workaround, it simply skip second device by PCI id.

--- pci.c       Fri Mar 18 20:00:06 2005
+++ /usr/src/sys/dev/pci/pci.c  Sat Feb 26 12:41:36 2005
@@ -961,6 +961,16 @@
                for (f = 0; f <= pcifunchigh; f++) {
                        dinfo = pci_read_device(pcib, busno, s, f, dinfo_size);
                        if (dinfo != NULL) {
+                               static int skipped = 0;
+                               pcicfgregs *cfg = &dinfo->cfg;
+                               if (cfg->vendor == 0x8086
+                                               && cfg->device == 0x3582) {
+                                       if (skipped) {
+                                               printf("Weird controller skipped\n");
+                                               continue;
+                                       }
+                                       skipped++;
+                               }
                                pci_add_child(dev, dinfo);
                        }
                }
>Release-Note:
>Audit-Trail:
State-Changed-From-To: open->feedback 
State-Changed-By: jh 
State-Changed-When: Wed Mar 2 16:20:43 UTC 2011 
State-Changed-Why:  
Can you still reproduce this on a supported release? 

http://www.freebsd.org/cgi/query-pr.cgi?pr=81015 
State-Changed-From-To: feedback->closed 
State-Changed-By: jh 
State-Changed-When: Fri Apr 22 20:20:28 UTC 2011 
State-Changed-Why:  
Feedback timeout. 

http://www.freebsd.org/cgi/query-pr.cgi?pr=81015 
>Unformatted:
