Bug 16826 - X can not start up for extended desktop with rotation
Summary: X can not start up for extended desktop with rotation
Status: VERIFIED FIXED
Alias: None
Product: xorg
Classification: Unclassified
Component: Server/General (show other bugs)
Version: git
Hardware: Other All
: medium major
Assignee: Wang Zhenyu
QA Contact: Xorg Project Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-07-23 19:40 UTC by WuNian
Modified: 2008-08-03 18:11 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments
xorg config file (4.12 KB, text/plain)
2008-07-23 19:40 UTC, WuNian
no flags Details
xorg.0.log (60.70 KB, text/plain)
2008-07-28 20:29 UTC, liuhaien
no flags Details

Description WuNian 2008-07-23 19:40:47 UTC
Created attachment 17848 [details]
xorg config file

I connected one monitor(max resolution is 1920x1200) via VGA to my GM945.

In xorg.conf, I let LVDS rotated to left, VGA is leftof LVDS and the virtual size is "4048x2048". Then start X, X crashed with backtrace:
Backtrace:
0: X(xf86SigHandler+0x80) [0x80d0660]
1: [0xffffe400]
2: X(xf86CrtcSetMode+0x1e7) [0x80eea07]
3: X(xf86SetDesiredModes+0x1a6) [0x80eeea6]
4: /opt/X11R7/lib/xorg/modules/drivers//intel_drv.so [0xb7d5312e]
5: /opt/X11R7/lib/xorg/modules/drivers//intel_drv.so [0xb7d5476c]
6: X(AddScreen+0x1ed) [0x806dc2d]
7: X(InitOutput+0x22e) [0x80a291e]
8: X(main+0x286) [0x806e3d6]
9: /lib/libc.so.6(__libc_start_main+0xe0) [0x4fa71f70]
10: X(FontFileCompleteXLFD+0xb1) [0x806d911]

Source:
xf86_video_intel   xf86-video-intel-2.4-branch
       commit f3b72c59e5000bcdb07cbdf080e09c55b9826eff
xserver 1.4 branch
Comment 1 Wang Zhenyu 2008-07-27 23:53:18 UTC
Don't miss the log, that's required for all reporters.

How about without kludge virtual setting? Tested on some monitor with rotate and leftof config works fine here. Or could you get gdb run for full backtrack?
Comment 2 liuhaien 2008-07-28 20:28:18 UTC
The bug does not exist with xserver master.

Full backtrace:
#0  0x080f41f3 in xf86CrtcRotate (crtc=0x8215128, mode=0x82151e0, rotation=2)
    at xf86Rotate.c:628
        shadowData = (void *) 0xb2197000
        shadow = (PixmapPtr) 0x0
        width = 1280
        height = 800
        old_width = 0
        old_height = 0
        pScrn = <value optimized out>
        pScreen = (ScreenPtr) 0x0
        crtc_to_fb = {matrix = {{0, -65536, 104857600}, {65536, 0, 0}, {0, 0,
      65536}}}
        fb_to_crtc = {matrix = {{0, 65536, 0}, {-65536, 0, 104857600}, {0, 0,
      65536}}}
#1  0x080eea07 in xf86CrtcSetMode (crtc=0x8215128, mode=0x82151e0, rotation=2,
    x=800, y=0) at xf86Crtc.c:283
        scrn = (ScrnInfoPtr) 0x8212268
        i = 3
        ret = 3
        didLock = 0
        adjusted_mode = (DisplayModePtr) 0x8223560
        saved_mode = {prev = 0x0, next = 0x0, name = 0x0, status = MODE_OK,
  type = 0, Clock = 0, HDisplay = 0, HSyncStart = 0, HSyncEnd = 0, HTotal = 0,
  HSkew = 0, VDisplay = 0, VSyncStart = 0, VSyncEnd = 0, VTotal = 0,
  VScan = 0, Flags = 0, ClockIndex = 0, SynthClock = 0, CrtcHDisplay = 0,
  CrtcHBlankStart = 0, CrtcHSyncStart = 0, CrtcHSyncEnd = 0,
  CrtcHBlankEnd = 0, CrtcHTotal = 0, CrtcHSkew = 0, CrtcVDisplay = 0,
  CrtcVBlankStart = 0, CrtcVSyncStart = 0, CrtcVSyncEnd = 0,
  CrtcVBlankEnd = 0, CrtcVTotal = 0, CrtcHAdjusted = 0, CrtcVAdjusted = 0,
  PrivSize = 0, Private = 0x0, PrivFlags = 0, HSync = 0, VRefresh = 0}
        saved_x = 800
        saved_y = 0
        saved_rotation = 1
#2  0x080eeea6 in xf86SetDesiredModes (scrn=0x8212268) at xf86Crtc.c:1794
        crtc = (xf86CrtcPtr) 0x8215128
        output = (xf86OutputPtr) 0x8215bc0
        o = <value optimized out>
        config = (xf86CrtcConfigPtr) 0x8215380
        c = <value optimized out>
        o = <value optimized out>
#3  0xb7d4fb16 in I830EnterVT (scrnIndex=0, flags=0) at i830_driver.c:3425
        pScrn = (ScrnInfoPtr) 0x8212268
        pI830 = (I830Ptr) 0x8213d10
#4  0xb7d511ac in I830ScreenInit (scrnIndex=0, pScreen=0x8220d98, argc=1,
    argv=0xbf9431a4) at i830_driver.c:3168
        pScrn = (ScrnInfoPtr) 0x8212268
        pI830 = (I830Ptr) 0x8213d10
        visual = <value optimized out>
        pI8301 = (I830Ptr) 0x0
        sys_mem = <value optimized out>
        c = <value optimized out>
        config = (xf86CrtcConfigPtr) 0x8215380
#5  0x0806dc2d in AddScreen (pfnInit=0xb7d4fee0 <I830ScreenInit>, argc=1,
    argv=0xbf9431a4) at main.c:769
        i = 0
        scanlinepad = 32
        format = 7
        depth = <value optimized out>
        bitsPerPixel = 32
        k = <value optimized out>
        pScreen = <value optimized out>
#6  0x080a291e in InitOutput (pScreenInfo=0x8200ba0, argc=1, argv=0xbf9431a4)
    at xf86Init.c:840
        i = <value optimized out>
        j = <value optimized out>
        k = <value optimized out>
        scr_index = <value optimized out>
        modulelist = <value optimized out>
        optionlist = (pointer *) 0x820e470
        layout = <value optimized out>
        screenpix24 = <value optimized out>
        pix24 = Pix24Use32
        pix24From = X_DEFAULT
        autoconfig = <value optimized out>
        generation = 1
#7  0x0806e3d6 in main (argc=1, argv=0xbf9431a4, envp=0xbf9431ac) at main.c:369
        i = <value optimized out>
        error = 134668646
        xauthfile = <value optimized out>
        alwaysCheckForInput = {0, 1}
Comment 3 liuhaien 2008-07-28 20:29:42 UTC
Created attachment 17950 [details]
xorg.0.log
Comment 4 Gordon Jin 2008-07-29 18:38:30 UTC
Jesse think it's server bug, and has been fixed in master branch.

Comment 5 Jesse Barnes 2008-07-29 18:41:45 UTC
Pushed as ff49f5944d06b17fb904c4f64b8660aab60d8d0d into the 1.4 branch.


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.