"Running X twice" problem: system hangup

NAKAJI Hiroyuki nakaji at heimat.jp
Sat Feb 4 06:06:57 PST 2006


I managed to get some logs of Xorg, but no kernel crash dump.

With "-logverbose 10" option, I checked 4 cases.

1. http://heimat.jp/~nakaji/FreeBSD/Millenium/Xorg.0.log.ok
   Run X for the first time.
   "startx -- -logverbose 10 -logfile ~/public_html/FreeBSD/Millenium/Xorg.0.log.ok"

2. http://heimat.jp/~nakaji/FreeBSD/Millenium/Xorg.0.log.ng
   Run X after first X session end.
   "startx -- -logverbose 10 -logfile ~/public_html/FreeBSD/Millenium/Xorg.0.log.ng"

3. http://heimat.jp/~nakaji/FreeBSD/Millenium/PCIDEBUG=2/Xorg.0.log.ok
   Same as case 1, compiled with PCIDEBUG=2 in Pci.h
   "startx -- -logverbose 10 -logfile ~/public_html/FreeBSD/Millenium/PCIDEBUG=2/Xorg.0.log.ok"

4. http://heimat.jp/~nakaji/FreeBSD/Millenium/PCIDEBUG=2/Xorg.0.log.ng
   Same as case 2, compiled with PCIDEBUG=2 in Pci.h
   "startx -- -logverbose 10 -logfile ~/public_html/FreeBSD/Millenium/PCIDEBUG=2/Xorg.0.log.ng"

In all cases, Xorg is installed using
ports/x11-servers/xorg-server. In the case 3 and 4, Pci.h is modified
manually after "make patch".

=== Pci.h change ===
Index: Pci.h
===================================================================
RCS file: /cvs/xorg/xc/programs/Xserver/hw/xfree86/os-support/bus/Pci.h,v
retrieving revision 1.10
diff -u -u -r1.10 Pci.h
--- Pci.h       8 Nov 2005 19:04:56 -0000       1.10
+++ Pci.h       4 Feb 2006 13:53:09 -0000
@@ -204,7 +204,7 @@
 /*
  * Debug Macros/Definitions
  */
-/* #define DEBUGPCI  2 */    /* Disable/enable trace in PCI code */
+#define DEBUGPCI  2    /* Disable/enable trace in PCI code */
 
 #if defined(DEBUGPCI)
=== Pci.h change ===

The diff between case 1 and 2 shows some pci register values are
changed after the first X execution.

@@ -70,7 +70,7 @@
 
 (II) PCI: Probing config type using method 1
 (II) PCI: Config type is 1
-(II) PCI: stages = 0x03, oldVal1 = 0x8000005c, mode1Res1 = 0x80000000
+(II) PCI: stages = 0x03, oldVal1 = 0x00000000, mode1Res1 = 0x80000000
 (II) PCI: PCI scan (all values are in hex)
 (II) PCI: 00:00:0: chip 8086,1237 card 0000,0000 rev 02 class 06,00,00 hdr 00
 (II) PCI: 00:06:0: chip 1033,002c card 0000,0000 rev 01 class 06,80,00 hdr 00
@@ -336,9 +336,8 @@
 (--) MGA(0): Linear framebuffer at 0x24000000
 (--) MGA(0): MMIO registers at 0x20414000
 (II) xf86ReadPciBios: modifying membase[1] for device 0:13:0
-(II) xf86ReadPciBios: modifying membase[1] for device 0:13:0
-(II) xf86ReadPciBios: modifying membase[1] for device 0:13:0
-(WW) MGA(0): Video BIOS info block not detected!
+(II) Truncating PCI BIOS Length to 32768
+(--) MGA(0): Video BIOS info block at offset 0x07D60
 (==) MGA(0): Write-combining range (0x20414000,0x4000) was already clear
 (==) MGA(0): Write-combining range (0x24000000,0x800000)
 (**) MGA(0): VideoRAM: 4096 kByte

I saved the output of pcitweak of case 3 and 4
http://heimat.jp/~nakaji/FreeBSD/Millenium/PCIDEBUG=2/pcitweak.out.ok
and
http://heimat.jp/~nakaji/FreeBSD/Millenium/PCIDEBUG=2/pcitweak.out.after
respectively.
-- 
NAKAJI Hiroyuki


More information about the freebsd-x11 mailing list