Return to BSD News archive
Path: sserve!manuel!munnari.oz.au!uunet!mcsun!Germany.EU.net!unidui!du9ds3!veit From: veit@du9ds3.uni-duisburg.de (Holger Veit) Newsgroups: comp.unix.bsd Subject: Re: X386 gives a bus error in ET4000EnterLeave() Date: 5 Oct 92 09:30:51 GMT Organization: Uni-Duisburg FB9 Datenverarbeitung Lines: 70 Message-ID: <veit.718277451@du9ds3> References: <48243@shamash.cdc.com> Reply-To: veit@du9ds3.uni-duisburg.de NNTP-Posting-Host: du9ds3.uni-duisburg.de In <48243@shamash.cdc.com> pbd@runyon.cim.cdc.com (Paul Dokas) writes: >I've completely rebuilt X11R5 from the original (patched) MIT source >and now I'm trying to run it, but typing "X386 :0" results in: > X386 Version 1.2E 1.0.1 / X Window System > (protocol Version 11, revision 0, vendor release 5000) > Bus error >:-( >My SVGA card is a et4000 card (Diamond SpeedStar Plus) in a generic >386. I've tried several different Xconfig's, but there seems to be >little difference: > . > . > . ># ># The graphics drivers ># >vga256 > chipset "et4000" > videoram 1024 > viewport 0 0 > virtual 1024 1024 > clocks 25 28 65 72 79 59 64 > modes "640x480" "800x600" "1024x768" >ModeDB >#Modename clock horzontal timing vertical timing > "640x480" 25 640 664 760 800 480 491 493 525 > "800x600" 36 800 824 896 1024 600 601 603 625 > 40 800 840 968 1056 600 601 605 628 > "1024x768" 65 1024 1088 1200 1328 768 783 789 818 >I've run X386 through gdb and found that it's dying on line 398 >of et4000/driver4.c, which is: > vgaIOBase = (inb(0x3CC) & 0x01) ? 0x3D0 : 0x3B0; >(actually in the inb() which is an inline function found in ../../compiler.h) >So it seems that I can't read/write to the needed ports. Anyone have any >suggestions? Am I SOL because of the Diamond card? I thought that the >proprietary clocks were only on the newer cards like the Stealth. >BTW, I've patched and rebuilt my kernel with the XSERVER patches. I've >also created a /dev/vga with "mknod /dev/vga c 12 0". >-- >#include <std.disclaimer> >#define FULL_NAME "Paul Dokas" >#define EMAIL "pbd@runyon.cim.cdc.com" >/* we are realizing infinite possibilities in exchange for our soul */ This problem at inb/outb occurs when the xserver does not run in the protection ring 0. The kernel patches to pccons accomplish that in the CONSOLE_X_MODE_ON/OFF ioctl's. If they are not present, you get this fault. Also the xserver must be setuid root. BTW, a simple stupid question: you may have done the XSERVER patches, but did you rebuild the kernel with the XSERVER option in your config file, and did you do a make depend? Holger -- | | / Dr. Holger Veit | INTERNET: veit@du9ds3.uni-duisburg.de |__| / University of Duisburg | "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX | | / Dept. of Electr. Eng. | Sorry, the above really good fortune has | |/ Inst. f. Dataprocessing | been CENSORED because of obscenity"