Bug 9604 - 3D app error on wide-screen: bmGenBufferStatic: Assertion `0' failed
Summary: 3D app error on wide-screen: bmGenBufferStatic: Assertion `0' failed
Status: VERIFIED FIXED
Alias: None
Product: xorg
Classification: Unclassified
Component: Driver/intel (show other bugs)
Version: 7.2 (2007.02)
Hardware: x86 (IA32) Linux (All)
: highest major
Assignee: Eric Anholt
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-01-10 23:13 UTC by xuji
Modified: 2007-02-26 18:40 UTC (History)
2 users (show)

See Also:
i915 platform:
i915 features:


Attachments
xorg.log (58.51 KB, text/plain)
2007-01-10 23:17 UTC, xuji
no flags Details
xorg.conf (2.85 KB, text/plain)
2007-01-10 23:18 UTC, xuji
no flags Details
xorg.conf (3.38 KB, text/plain)
2007-02-04 18:28 UTC, xuji
no flags Details
xorg.log (57.70 KB, text/plain)
2007-02-04 18:29 UTC, xuji
no flags Details

Description xuji 2007-01-10 23:13:32 UTC
--Architecture(ia32,ia32e): ia32 & ia32e 
--Xf86_video_intel modesetting(5a793b0dcf2d5de408b55073858fcfba6d99f994)
--Mesa: CVS tip
--OS: FC5
--Xserver: randr-1.2-for-server-1.2(f05dd384d38c76dd9662933a03625dfef5b1c81f)

using a wide-screen monitor, the 3D app such as glxinfo and glxgears failed 
with following error:

bufmgr_fake.c:745: bmGenBufferStatic: Assertion `0' failed.
Comment 1 xuji 2007-01-10 23:17:42 UTC
Created attachment 8356 [details]
xorg.log
Comment 2 xuji 2007-01-10 23:18:17 UTC
Created attachment 8357 [details]
xorg.conf
Comment 3 haihao 2007-01-10 23:33:10 UTC
The proplem is Mesa/i965 supposes the memories allocated for front/depth/back 
buffer in 2D driver are 4k aligned. But with the latest 2D driver applied, 
they are no longer 4k aligned. 

Option "Virtual 2048 2048" in xorg.conf (display section) can make them work 
fine.
Comment 4 Eric Anholt 2007-01-26 14:50:10 UTC
Should be fixed in upstream Mesa now.
Comment 5 xuji 2007-02-04 18:28:01 UTC
with mesa git branch master(af1d1e08e40c8c70dfa81e39724be11da94f938d) and 
Xserver git branch server-1.2-branch(8798c8cfa888521cc47173bf6db00b5724da4a54), the bug still exists.
Comment 6 xuji 2007-02-04 18:28:40 UTC
Created attachment 8594 [details]
xorg.conf
Comment 7 xuji 2007-02-04 18:29:14 UTC
Created attachment 8595 [details]
xorg.log
Comment 8 xuji 2007-02-05 18:09:45 UTC
with the latest mesa branch(8518ddda7b5f8e43de4859042fe59f55aa0c2760) and Xserver (4e6872fca75b77c342a7e1e715b1c30dc2642a73) , the 3D app runs well on wide screen and error disappears.
Comment 9 xuji 2007-02-12 02:01:08 UTC
According to my latest discovery, the problem still exists :
last time when I verify the bug, I did as follows:
1. update the driver to the 965 machine (the machine connect to the monitor via a KVM)
2. start X and a 3D App on it from remote console(what is important, the KVM does not display the current screen at thar very moment)
3. switch the KVM to the 965 machine, and the 3D App run well. 
4. close and start the App again within the same screen, no problem occurs.
from above finding, I verify the bug.

however, if the first time start X and then run a 3D App with the KVM displaying the same screen or just connect the machine with monitor(using no KVM), the App will fails with the original error info:

bufmgr_fake.c:745: bmGenBufferStatic: Assertion `0' failed.

after the error occur, in order to be successful, X has to be killed and start after switch KVM to another screen.

In conclusion, the error occurs when starting X with KVM indicate to the same screen, otherwise, it's OK. 
Comment 10 xuji 2007-02-12 19:04:15 UTC
The above comment may be kind of confusing and misleading by the role of KVM, however, the key issue is that directly connecting monitor to the machine still have the bug when starting a 3D App.
Comment 11 Eric Anholt 2007-02-26 15:05:52 UTC
Previous testing wasn't quite thorough enough and I hit sizes with page-aligned pitch * height anyway.  Fixed in modesetting for a root window size of 1680x1050 now.


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.