| Summary: | Glxgears failed in qemux86/x86-64 on ubuntu 11.10 | ||
|---|---|---|---|
| Product: | [Build System, Metadata & Runtime] OE-Core | Reporter: | Hongna Xu <hongnax.xu> |
| Component: | graphics | Assignee: | Edwin Zhai <edwin.zhai> |
| Status: | VERIFIED FIXED | QA Contact: | |
| Severity: | normal | ||
| Priority: | Medium | CC: | jiajun.xu, lianhao.lu, meta.mr.watcher, meta.watcher, yilongx.y.sun |
| Version: | unspecified | ||
| Target Milestone: | 1.2 M3 | ||
| Hardware: | x86 | ||
| OS: | x86_64 | ||
| Whiteboard: | |||
| OS type for building Yocto: | --- | Type of Regression: | --- |
| Verified: | Documentation change: | --- | |
|
Description
Hongna Xu
2012-01-20 02:51:43 UTC
This bug is the x86-64 version of bug 1442. Extended it to x86-64 fix it. Patch already out. fixed @ http://git.yoctoproject.org/cgit/cgit.cgi/poky/commit/?id=93d157b7245182d88395b2e361db28528dd3af19 when i run command "glxgears" in qemux86-64 terminal , i got follows' message. root@qemux86-64:~# glxgears go on... looking for "glXChooseVisual", global_glXGetProcAddress request nbRequestElts=1766 glAddSwapHintRectWIN 1 0 glBeginConditionalRenderNVX 1 0 glBeginDefineVisibilityQueryATI 1 0 glBeginOcclusionQuery 1 0 glBeginSceneEXT 1 0 glBeginUseVisibilityQueryATI 1 0 ... glXQueryMaxSwapBarriersSGIX 1 0 glXReleaseBuffersMESA 1 0 glXReleaseTexImageEXT 1 0 glXSelectEventSGIX 1 0 glXSwapBuffersMscOML 1 0 glXWaitForMscOML 1 0 glXWaitForSbcOML 1 0 looking for "glXChooseVisual", looking for "glXCreateContext", looking for "glXMakeCurrent", looking for "glXQueryExtensionsString", looking for "glXGetSwapIntervalMESA", looking for "glXGetSwapIntervalMESA", not found name on client side = glXGetSwapIntervalMESA Segmentation fault image URL: http://autobuilder.pokylinux.org/pub/nightly/20120229-1/machines/qemu/qemux86-64/core-image-sato-sdk-qemux86-64.ext3 Yilong, I have tried your image, and glxgears works well. It's a qemu bug, so do you get latest qemu? Another reason may be the host. Do you have nVidia's opengl driver? Thanks, Edwin I can run glxgears well on my ubuntu 10.10 machine with Hongna's qemu/kernel/image. So something wrong in the Ubuntu 11.10 host, which is already tracked by bug 1886. I'll try to fix bug 1886, then Yilong can verify this one. There are some new extensions in mesa 7.11 driver on ubutu 11.10, such as GLX_MESA_copy_sub_buffer GLX_MESA_multithread_makecurrent GLX_MESA_swap_control. Exporting these to guest leads some GL call like glXGetSwapIntervalMESA, which is not handled in libgl-qemu and qemu. Implementation of these APIs is hacky, as they are X-window related. Feasible fix is hiding these extensions from guest. Patch already out. BTW, following variables is used for debug when launching with gl apps. DEBUG_GL=1 DEBUG_ARRAY_PTR=1 -- put more debug info in libgl-qemu WRITE_GL -- ask qemu to record all the GL calls in /tmp/debug_gl.bin, then can replay it with opengl_player. Fixed @ http://git.yoctoproject.org/cgit/cgit.cgi/poky/commit/?id=7161e47fd18ed7bdd988bbd14c8cae65f5bc9680 change the title to reflect the log and fix, open Bug 2221 for FC16 gl bug. So hongna, when you verify bug 1886 after my fix in master, pls. also verify this one. Pls. also track bug 2221. Thanks, Edwin VERIFIED and FIXED with poky/1.2M4 rc2,commint 27aa5489fb40d99c58bb2a4bbf2311e2c502a091. |