Bug 1202 - Server crashes at start with bpp set to 1 or 4
Summary: Server crashes at start with bpp set to 1 or 4
Status: RESOLVED FIXED
Alias: None
Product: xorg
Classification: Unclassified
Component: Driver/Trident (show other bugs)
Version: git
Hardware: x86 (IA32) Linux (All)
: high normal
Assignee: Xorg Project Team
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-08-27 06:21 UTC by Jakub Stachowski
Modified: 2004-12-18 21:55 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:


Attachments
Patch removing 1 and 4 bpp support (8.76 KB, patch)
2004-08-27 13:31 UTC, Jakub Stachowski
no flags Details | Splinter Review

Description Jakub Stachowski 2004-08-27 06:21:39 UTC
After setting DefaultDepth in config file to 1 or 4, xorg crashes at start with "Caught signal 8. 
Server aborting". Problem lies in lines 2984-2992 of trident_driver.c: 
 
          int cpp = pScrn->bitsPerPixel / 8; 
            int area = AvailFBArea.y2 * pScrn->displayWidth; 
            int areaoffset = area * cpp; 
 
            xf86DrvMsg(pScrn->scrnIndex, X_INFO,  
               "Using %i scanlines of offscreen memory for area's \n", 
               AvailFBArea.y2 - pScrn->virtualY); 
 
            if (xf86InitFBManagerLinear(pScreen, area, ((pTrident->FbMapSize/cpp) - area))) { 
 
For depths lower than 8 cpp is initialized to 0, then division by zero raises SIGFPE.
Comment 1 Jakub Stachowski 2004-08-27 13:29:10 UTC
This bug is at least since Xorg 6.7 (introduced after XFree86 4.3). With 
XFree86 4.3 server starts but gives garbled output. As nobody noticed nor 
cared for so long time I suggest removing whole 1 and 4 bpp support from this 
driver (patch attached). 
Comment 2 Jakub Stachowski 2004-08-27 13:31:35 UTC
Created attachment 748 [details] [review]
Patch removing 1 and 4 bpp support
Comment 3 Adam Jackson 2004-12-19 16:55:57 UTC
applied to HEAD, thanks.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.