Bugzilla – Bug 204324
Broken vesa driver
Last modified: 2006-11-30 15:59:16 UTC
This is a Dell GX150 with 512M RAM and onboard i815 video. I tried 3 times to install factory from FTP. Each time I got the message "can't start X server" and got dumped into text install. First I tried twice with the 28 Aug linux and initrd, which I had downloaded to /boot, then with the then current 31 Aug versions. I later tried the 4 Sept. boot.iso CD and got the same problem. Error console shows: (EE) Failed to load module "glx" (module does not exist, 0) 0: Xorg(xf86SigHandler+0x81) [0x80cbb11] 1: [0xb7f66420] 2: /usr/lib/xorg/modules//libfb.so(fbOddTile+0x118) [0xb7ba5978] 3: /usr/lib/xorg/modules//libfb.so(fbTile+0x8c) [0xb7ba5a3c] 4: /usr/lib/xorg/modules//libfb.so(fbFillRegionTiled+0x19e) [0xb7ba62ee] 5: /usr/lib/xorg/modules//libfb.so(fbPaintWindow+0x109) [0xb7ba65c9] 6: Xorg [0x8156cb1] 7: Xorg(miWindowExposures+0xfa) [0x810c70a] 8: Xorg(MapWindow+0x332) [0x8072c52] 9: Xorg(InitRootWindow+0xbe) [0x8072dee] 10: Xorg(main+0x42f) [0x806e55f] 11: /lib/libc.so.6(__libc_start_main+0xdc) [0xb7d1b87c] 12: Xorg(FontFileCompleteXLFS+0x1f5) [0x806d8e1] Fatal server error: Caught signal 11. Server aborting
Please install Alpha4 instead. I cannot reproduce such bugreports.
I already did that after filing this bug (the very next day) and had the exact same problem.
re comment 2
Well, could you please attach the complete logfile then?
The messages in comment 0 were copied from the error console during installation. I don't know where the logfile you want is located or its name. A search for files in /var/log containing "(EE) Failed to load module" failed to produce any results. Might bug 204521 be related?
This is the Xerver log during installation? For i815 no Xserver should be used, since i815 does not support a kernel framebuffer. I need to verify this.
I used alt-F[?] to find a console with that information. Are you asking me to start an install and find some log somewhere? Where is the installation log located, and what is it called? I see no candidates anywhere in /root.
There's nothing you need to investigate. I will do so with a similar gfx card, wich can't do fbdev.
I get same failure on generic older Celeron 800 system with integrated i810 video.
I cannot reproduce on a i810 machine, since I don't have one with enough RAM, so ncurses YaST will be started already because of this. :-( So could you attach the complete logfile and config file during installation? /var/log/Xorg.0.log /etc/X11/xorg.conf
How much RAM does yours have? I get the message at start of text install that X installer didn't start possibly because of insufficient RAM even on system with 512M of RAM. How do I get the config file and logfile "during installation"? Are they saved to the / tree somewhere to be found after installation?
Press Alt-F2 during installation to get access to these files. Mount a floppy disk or use scp for copying it to your network.
Created attachment 98427 [details] i810 installation Xorg.0.log
Created attachment 98428 [details] i810 installation xorg.conf I also have the following if you need them: boot.msg macro_inst_initial.ycp xorg.conf.instorig y2log y2start.log
Hmm ... the vesa driver is started, which is simply wrong. Instead a text based installation should be started. I think this is something for the installation scripts.
why is vesa wrong if there is no framebuffer vesa would be perfectly correct. All information needed is provided in the y2start.log file If you don't mind provide it Thanks
Hmm ... I thought we no longer use the vesa driver for installation? Or was this only for IA64?
yes this was only on ia64 because on this architecture the accelerated driver is the only one which works (no framebuffer no vesa registers )
Ok. Then we probably have a broken vesa driver. :-( Anyway, Felix please provide the y2start.log file.
Created attachment 98446 [details] i810 installation y2start.log The 10.1 installer does not have this problem. I have its logs too if you want them.
Let me know if the core dump would help too.
Thanks for the information. The log said: Stage [call]: =================================== |-- No Framebuffer available: Using vesa driver this is a correct behaviour. Unfortunately the X-Server couldn't be started. If you could provide the /var/log/Xorg.*.log file we can have a look why the X-Server failed. The config file looks good to me to run vesa Thanks
That would be attachment 98427 [details]
(In reply to comment #22) > If you could provide the /var/log/Xorg.*.log file we can have a look > why the X-Server failed. The config file looks good to me to run vesa See comment #13. Looks like we have a broken vesa driver. :-(
yes indeed
Yes indeed you would like a core file, or yes indeed vesa driver is broken?
Yes, core file would help.
Created attachment 98462 [details] i810 installation core
Luckily I can reproduce this problem also with a S3 Trio (PCI) during installation.
Program received signal SIGSEGV, Segmentation fault. 0xb7dbb13c in memcpy () from /lib/libc.so.6 (gdb) bt #0 0xb7dbb13c in memcpy () from /lib/libc.so.6 #1 0xb7b7b6a1 in fbBlt (srcLine=0x82be970, srcStride=2, srcX=0, dstLine=0xb7b6c000, dstStride=512, dstX=0, width=64, height=4, alu=3, pm=4294967295, bpp=16, reverse=0, upsidedown=0) at /usr/include/bits/string3.h:51 #2 0xb7b949b8 in fbOddTile (dst=0xb7b5c000, dstStride=512, dstX=0, width=16384, height=732, tile=0x82be970, tileStride=2, tileWidth=64, tileHeight=4, alu=3, pm=4294967295, bpp=16, xRot=0, yRot=0) at fbtile.c:152 #3 0xb7b94a7c in fbTile (dst=0xb7b5c000, dstStride=512, dstX=0, width=16384, height=768, tile=0x82be970, tileStride=2, tileWidth=137095536, tileHeight=4, alu=3, pm=4294967295, bpp=16, xRot=0, yRot=2) at fbtile.c:200 #4 0xb7b9532e in fbFillRegionTiled (pDrawable=0x81ff538, pRegion=0xbf9d74a8, pTile=0x82be938) at fbwindow.c:298 #5 0xb7b95609 in fbPaintWindow (pWin=0x81ff538, pRegion=0xbf9d74a8, what=0) at fbwindow.c:334 #6 0x08156c21 in damagePaintWindow (pWindow=0x81ff538, prgn=0xbf9d74a8, what=0) at damage.c:1593 #7 0x0810c69a in miWindowExposures (pWin=0x81ff538, prgn=0xbf9d74a8, other_exposed=0x0) at miexpose.c:565 #8 0x08072c52 in MapWindow (pWin=0x81ff538, client=0x81ddd68) at window.c:2816 #9 0x08072dee in InitRootWindow (pWin=0x81ff538) at window.c:524 #10 0x0806e55f in main (argc=1, argv=0xbf9d75e4, envp=0xe816f000) at main.c:429
Well, the X Server is crashing in memcpy() in the new optimization code for fbBlt(): --- programs/Xserver/fb/fbblt.c 2005-11-29 12:29:07.000000000 +0100 +++ ../git/xserver/fb/fbblt.c 2006-08-15 11:53:39.000000000 +0200 @@ -21,12 +21,12 @@ * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR * PERFORMANCE OF THIS SOFTWARE. */ -/* $XFree86: xc/programs/Xserver/fb/fbblt.c,v 1.7 2000/09/22 05:58:01 keithp Ex p $ */ #ifdef HAVE_DIX_CONFIG_H #include <dix-config.h> #endif +#include <string.h> #include "fb.h" #define InitializeShifts(sx,dx,ls,rs) { \ @@ -77,6 +77,29 @@ fbBlt (FbBits *srcLine, return; } #endif + + if (alu == GXcopy && pm == FB_ALLONES && !reverse && + !(srcX & 7) && !(dstX & 7) && !(width & 7)) { + int i; + CARD8 *src = (CARD8 *) srcLine; + CARD8 *dst = (CARD8 *) dstLine; + + srcStride *= sizeof(FbBits); + dstStride *= sizeof(FbBits); + width >>= 3; + src += (srcX >> 3); + dst += (dstX >> 3); + + if (!upsidedown) + for (i = 0; i < height; i++) + memcpy(dst + i * dstStride, src + i * srcStride, width); + else + for (i = height - 1; i >= 0; i--) + memcpy(dst + i * dstStride, src + i * srcStride, width); + + return; + } + FbInitializeMergeRop(alu, pm); destInvarient = FbDestInvarientMergeRop(); if (upsidedown)
Created attachment 98580 [details] disable-fbblt-opt.diff Workaround: Disable optimization - introduced by ajax.
fixed (via workaround) now for buildservice and Alpha5. Matthias will further investigate this issue later.
*** Bug 204521 has been marked as a duplicate of this bug. ***
Shouldn't factory ftp now have the fix? It still doesn't work.
Check the xorg-x11-server changelog for this entry: ------------------------------------------------------------------- Wed Sep 13 15:11:44 CEST 2006 - sndirsch@suse.de - disable-fbblt-opt.diff: * Disable optimization (introduced by ajax) due to a general vesa driver crash later in memcpy (Bug #204324)
Comment 36 just echos comment 32 without telling me whether current factory should have a fix to test incorporated. It would be nice to confirm a fix actually works before the next iso set is released.
Sorry, but "current factory" is simply undefined for me. Of course I tested the fix and it worked for me.
Today it meant whatever was located at ftp://mirrors.kernel.org/pub/opensuse/distribution/SL-OSS-factory/inst-source at the time I tried right before making comment 35.
The one of this directory contains the patch, but this can already be a different one than you have been using. Therefore I asked you for this information.
(In reply to comment #40) > The one of this directory contains the patch Then I should have had success with today's attempt to install, but I did not. I see nothing different now than when I submitted this report. > but this can already be a > different one than you have been using. Therefore I asked you for this > information. I don't know what the above means, or what you would like me to do next.
Simply check, if "rpm --changelog xorg-x11-server" on your system contains the changelog entry I mentioned in comment #36. Then the vesa driver should work when this RPM is installed.
Stefan, look back to your change of summary from "X installer refuses to start on i81x integrated video" on 2006-09-12 09:32:08, which was specific to installation but you changed to general vesa, and you should see this bug was filed because of a broken installer. There is no installed xorg-x11-server on a system that has no OS installed do to failure of graphical install to start and consequent aborted install. I tested earlier today for the existence of a fix for this bug by trying again to install graphically on my i810 system, and was unsuccessful. "It" in comment 35 referred to the installer and comment 0. "Shouldn't factory ftp now have the fix?" in comment 35 referred to being able to install graphically from ftp source, as described in comment 0 . I failed to first check to see that ftp://mirrors.kernel.org/pub/opensuse/distribution/SL-OSS-factory/inst-source/boot/i386/root , which is what I believe is the installation program, had not been updated since comment 33, which means I wasted my time and yours today with comment 35 and following. On the i815 system I already installed rc4 on using the text mode of the installer, I have done no updates since the comment 36 fix, and am still successfully using the i810 driver to run X.
I'm not familiar with a factory installation. I have absolutely no idea, when fixes made in the packages (xorg-x11-server in this case) are included in the installation system of factory (which is created by using the files of the packages). Please try again with Alpha5. There's nothing more to say. I'm sorry.
Factory is synced out every 24-48 hours.
Apparently a sync to 19 Sept update to inst-source/boot/i386/root and the install kernel and initrd on mirrors.kernel.org happened shortly after my installation attempt described in comment 35 . I just tried again with that new version on i810 and got the same failure. Xorg.0.log ends with the same backtrace and signal 11 as in attachment 98427 [details] . Again core dumped. I see no alpha5 to test.
I don't have time for factory tests. Alpha5 will be released in about 3 weeks.
*** Bug 205953 has been marked as a duplicate of this bug. ***
I tried on i815 with 20 Oct factory and it's still bad. No material difference that I can see in the tail of Xorg.0.log from the one in comment 0.
Please retest with Beta1 - to be releaesd this week - by installing from a CD, since this is an installation, which we can reproduce.
Date: Mon, 23 Oct 2006 10:19:11 -0400 From: Felix Miata <mrmazda@ij.net> To: opensuse-factory@opensuse.org Subject: [opensuse-factory] Re: [Bug 204324] Broken vesa driver On 06/10/23 08:47 (GMT-0400) bugzilla_noreply@novell.com apparently typed: > https://bugzilla.novell.com/show_bug.cgi?id=204324 > sndirsch@... changed: > What |Removed |Added > ---------------------------------------------------------------------------- > Status|ASSIGNED |NEEDINFO > Info Provider| |mrmazda@... > > ------- Comment #50 from sndirsch@... 2006-10-23 06:47 MST ------- > Please retest with Beta1 - to be releaesd this week - by installing from a CD, > since this is an installation, which we can reproduce. Either Dirsch or I seem to be misunderstanding what factory ftp is and/or is for. Why does Dirsch seem to think I need to waste my time burning and installing from CD instead of just installing from FTP? Does Dirsch not understand that even after 10.2 is released that FTP installs will need to succeed? Does Dirsch not understand that retests only from DVD or CD mean that retests get delayed and could prevent a fix from being found and verified prior to release date? Is Dirsch the only Novell person capable of trying to recreate this bug or verify a fix? From Dirsch's comments in this and other bugs it seems he has limited resources at his disposal. Aren't i81x chipsets rather common? Why has this bug been open so long? -- "The Lord is my strength and my shield; my heart trusts in him, and I am helped." Psalm 28:7 NIV Team OS/2 ** Reg. Linux User #211409 Felix Miata *** http://mrmazda.no-ip.com/ --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-factory+help@opensuse.org
Unfortunately we only have a i815 machine with 64MB available for testing and you might know, that you can't do a graphical installation with 64 MB. :-( I could reproduce this problem on another machine with a S3 card and fixed this problem. Since it was a generic problem I assumed that it would fix the problem for i815 as well. Maybe I was wrong. AFAIK valid bugreports can only be done against a specific beta version version and not against somewhat factory. I never did a ftp factory installation.
I finally found a i810 machine, which should be similar to i815, which I could upgrade to 256 MB RAM. Unfortunately I saw a different problem with Alpha5+ with this machine. The vesa driver produces a blank screen, then the monitor switched off. I tried to do a text installation - to investigate the vesa driver issues later - but this resulted in installation, which could not be restarted (grub error).
I finally managed to install Alpha5+ on this machine in textmode. Unfortunately it's not possible to create a X11 configuration with using SaX2 - neither by using vesa driver nor by using i810 driver. What a waste of time. IMHO we shouldn't support such old hardware any longer with openSUSE 10.2.
At least you can create a i810 driver configuration with xorgconfig.
Steffen, there's no need to read the comments above. :-) Could you please add the agp modules (at least agpgart and intel-agp) to instsys, so it would be possible to use the native driver (i810) during installation with "acceleratedx=1"? Thanks.
Added agp modules. Hope someone loads them if needed.
Thanks! This can be tested with Beta2 by adding acceleratedx=1 to the boot pompt.
(In reply to comment #54) > IMHO we shouldn't support such old hardware any longer with openSUSE 10.2. My i815 system's X works just fine with Debian Etch, Knoppix, Mandriva 2006, and Ubuntu Edgy. Dropping support for common older hardware would just add reasons for people to choose other distros. As previously noted, I have both i810 and i815. The i810 has SUSE 10.0 installed. Its kernel line includes a parameter put there by the installer that I have never seen elsewhere: x11i=vesa. I've had absolutely no success in finding docs on x11i, so have no idea why it's there or whether it might be relevant here. Was the S3 "card" a chip on the motherboard using shared RAM, as both i810 and i815 do? I'm looking forward to the next ftp update to installation kernel and initrd to try again. Is acceleratedx=1 required, or optional, for a graphical installation to proceed?
x11i=vesa on SUSE 10.0 means using the vesa driver during the installation. This is the default on openSUSE 10.2, which obviously no longer works for you and me. Well, I didn't test a SUSE 10.0 installation with my i810 machine. The S3 card was a separate card and not "onboard". "acceleratedx=1" will be required when you want to try to use the native driver during installation for Beta2. I seriously don't know, when this will work for the ftp installation. I'm sorry.
As originally filed, "X installer refuses to start on i815", using acceleratedx=1 to install has fixed this. Did this get a relnote?
Won't help since the release notes are shown at the end of the installation but you need to know it at the begin of the installation. :-(
It could help, because the truly astute read the relnotes first in order to avoid installation obstacles.
I don't think the release notes are already available in grub menu.
Of course not. But they should be available on the DVD or the WWW.
Really? I wouldn't even know where to look for it on DVD or WWW.
Out of curiosity I just went hunting for 10.1 release notes on opensuse.org, but couldn't find them. Not a good sign. :-/
see bug 224919
If relnotes are non-existent prior to installation, that's a separate problem that needs an immediate fix yesterday. If this isn't doable, then it needs to be part of the installation instructions that are readily available before starting the installe, e.g. http://www.novell.com/products/suselinux/installation.html when updated for 10.2 and/or http://<lang>.opensuse.org/Installation. Other distros put their relnotes on the web. e.g. http://fedora.redhat.com/docs/release-notes/fc6/en_US/ http://qa.mandriva.com/twiki/bin/view/Main/MandrivaLinux2007ReleaseNotes