I am tring to use the mesa drm i915 driver from git master current commit 7e6d08f670a55d79ee037144aa29104e4e8fc700 with Mesa 7.0 i915tex_dri.so and xserver 1.3 and the git master current xf86-video-intel driver compiled with the git version of libdrm from the same above commit. I run the xserver with xterm as the only client and run glxinfo # glxinfo name of display: :0.0 libGL warning: 3D driver claims to not support visual 0x73 Failed to initialize batch pool - possible incorrect agpgart installed Segmentation fault I get the following in dmesg: Linux agpgart interface v0.102 (c) Dave Jones agpgart: Detected an Intel 915GM Chipset. agpgart: Detected 7932K stolen memory. agpgart: AGP aperture is 256M @ 0xc0000000 [drm] Initialized drm 1.1.0 20060810 ACPI: PCI Interrupt 0000:00:02.0[A] -> GSI 16 (level, low) -> IRQ 169 PCI: Setting latency timer of device 0000:00:02.0 to 64 [drm] Initialized i915 1.9.0 20070209 on minor 0 [drm:drm_lookup_buffer_object] *ERROR* Could not find buffer object 0x6c635f54 Using the setup described above works perfectly with git drm driver commit bc7d6c76fab2ff4d2f11b6bd84ca8b8f124729fd I tried to do git-bisect and it said: 6a62941ecaa7d2b8f14b30920856bfa52aee4775 is first bad commit commit 6a62941ecaa7d2b8f14b30920856bfa52aee4775 Author: Dave Airlie <airlied@linux.ie> Date: Sun May 6 11:35:11 2007 +1000 drm/ttm: cleanup most of fence ioctl split out Following is the relevant output of lspci -vv 00:00.0 Host bridge: Intel Corporation Mobile 915GM/PM/GMS/910GML Express Processor to DRAM Controller (rev 03) Subsystem: Sony Corporation Unknown device 81b7 Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR+ FastB2B- Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort+ >SERR- <PERR- Latency: 0 Capabilities: [e0] Vendor Specific Information 00:02.0 VGA compatible controller: Intel Corporation Mobile 915GM/GMS/910GML Express Graphics Controller (rev 03) (prog-if 00 [VGA]) Subsystem: Sony Corporation Unknown device 81b8 Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- Latency: 0 Interrupt: pin A routed to IRQ 169 Region 0: Memory at b0080000 (32-bit, non-prefetchable) [size=512K] Region 1: I/O ports at 1800 [size=8] Region 2: Memory at c0000000 (32-bit, prefetchable) [size=256M] Region 3: Memory at b0040000 (32-bit, non-prefetchable) [size=256K] Capabilities: [d0] Power Management version 2 Flags: PMEClk- DSI+ D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-) Status: D0 PME-Enable- DSel=0 DScale=0 PME- 00:02.1 Display controller: Intel Corporation Mobile 915GM/GMS/910GML Express Graphics Controller (rev 03) Subsystem: Sony Corporation Unknown device 81b8 Control: I/O- Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- Region 0: Memory at 32000000 (32-bit, non-prefetchable) [disabled] [size=512K] Capabilities: [d0] Power Management version 2 Flags: PMEClk- DSI+ D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-) Status: D0 PME-Enable- DSel=0 DScale=0 PME-
hum I tried that after and don't had problems
Created attachment 10878 [details] dmesg with debug The bug is consistently reproducible on my intel laptop. Relevant part of the dmesg with debug turned on is attached when running xserver with xterm as client and glxinfo segfaults.
Created attachment 10879 [details] Xorg.0.log for for the above case The Xorg.0.log when glxinfo segfaults is attached here, corresponds to the dmesg above.
Created attachment 10880 [details] working dmesg with debug The dmesg with debug turned on for the working case (drm commit id bc7d6c76fab2ff4d2f11b6bd84ca8b8f124729fd ) The output of glxinfo: # glxinfo name of display: :0.0 libGL warning: 3D driver claims to not support visual 0x73 display: :0 screen: 0 direct rendering: Yes server glx vendor string: SGI server glx version string: 1.2 server glx extensions: GLX_ARB_multisample, GLX_EXT_import_context, GLX_EXT_texture_from_pixmap, GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_OML_swap_method, GLX_SGI_make_current_read, GLX_SGI_swap_control, GLX_SGIS_multisample, GLX_SGIX_fbconfig, GLX_SGIX_visual_select_group client glx vendor string: SGI client glx version string: 1.4 client glx extensions: GLX_ARB_get_proc_address, GLX_ARB_multisample, GLX_EXT_import_context, GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_MESA_allocate_memory, GLX_MESA_copy_sub_buffer, GLX_MESA_swap_control, GLX_MESA_swap_frame_usage, GLX_OML_swap_method, GLX_OML_sync_control, GLX_SGI_make_current_read, GLX_SGI_swap_control, GLX_SGI_video_sync, GLX_SGIS_multisample, GLX_SGIX_fbconfig, GLX_SGIX_pbuffer, GLX_SGIX_visual_select_group, GLX_EXT_texture_from_pixmap GLX extensions: GLX_ARB_get_proc_address, GLX_ARB_multisample, GLX_EXT_import_context, GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_MESA_swap_control, GLX_MESA_swap_frame_usage, GLX_OML_swap_method, GLX_SGI_make_current_read, GLX_SGI_swap_control, GLX_SGI_video_sync, GLX_SGIS_multisample, GLX_SGIX_fbconfig, GLX_SGIX_visual_select_group OpenGL vendor string: Tungsten Graphics, Inc OpenGL renderer string: Mesa DRI Intel(R) 915GM 20061102 x86/MMX/SSE2 OpenGL version string: 1.3 Mesa 7.0 OpenGL extensions: GL_ARB_depth_texture, GL_ARB_fragment_program, GL_ARB_multisample, GL_ARB_multitexture, GL_ARB_pixel_buffer_object, GL_ARB_point_parameters, GL_ARB_shadow, GL_ARB_texture_border_clamp, GL_ARB_texture_compression, GL_ARB_texture_cube_map, GL_ARB_texture_env_add, GL_ARB_texture_env_combine, GL_ARB_texture_env_crossbar, GL_ARB_texture_env_dot3, GL_ARB_texture_mirrored_repeat, GL_ARB_texture_non_power_of_two, GL_ARB_texture_rectangle, GL_ARB_transpose_matrix, GL_ARB_vertex_buffer_object, GL_ARB_vertex_program, GL_ARB_window_pos, GL_EXT_abgr, GL_EXT_bgra, GL_EXT_blend_color, GL_EXT_blend_equation_separate, GL_EXT_blend_func_separate, GL_EXT_blend_minmax, GL_EXT_blend_subtract, GL_EXT_clip_volume_hint, GL_EXT_cull_vertex, GL_EXT_compiled_vertex_array, GL_EXT_copy_texture, GL_EXT_draw_range_elements, GL_EXT_framebuffer_object, GL_EXT_fog_coord, GL_EXT_multi_draw_arrays, GL_EXT_packed_depth_stencil, GL_EXT_packed_pixels, GL_EXT_pixel_buffer_object, GL_EXT_point_parameters, GL_EXT_polygon_offset, GL_EXT_rescale_normal, GL_EXT_secondary_color, GL_EXT_separate_specular_color, GL_EXT_shadow_funcs, GL_EXT_stencil_wrap, GL_EXT_subtexture, GL_EXT_texture, GL_EXT_texture3D, GL_EXT_texture_edge_clamp, GL_EXT_texture_env_add, GL_EXT_texture_env_combine, GL_EXT_texture_env_dot3, GL_EXT_texture_filter_anisotropic, GL_EXT_texture_lod_bias, GL_EXT_texture_object, GL_EXT_texture_rectangle, GL_EXT_vertex_array, GL_3DFX_texture_compression_FXT1, GL_APPLE_client_storage, GL_APPLE_packed_pixels, GL_ATI_blend_equation_separate, GL_IBM_rasterpos_clip, GL_IBM_texture_mirrored_repeat, GL_INGR_blend_func_separate, GL_MESA_pack_invert, GL_MESA_ycbcr_texture, GL_MESA_window_pos, GL_NV_blend_square, GL_NV_light_max_exponent, GL_NV_texture_rectangle, GL_NV_texgen_reflection, GL_NV_vertex_program, GL_NV_vertex_program1_1, GL_OES_read_format, GL_SGIS_texture_border_clamp, GL_SGIS_texture_edge_clamp, GL_SGIS_texture_lod, GL_SGIX_depth_texture, GL_SUN_multi_draw_arrays glu version: 1.3 glu extensions: GLU_EXT_nurbs_tessellator, GLU_EXT_object_space_tess visual x bf lv rg d st colorbuffer ax dp st accumbuffer ms cav id dep cl sp sz l ci b ro r g b a bf th cl r g b a ns b eat ---------------------------------------------------------------------- 0x23 24 tc 0 32 0 r y . 8 8 8 8 0 0 0 0 0 0 0 0 0 None 0x24 24 tc 0 32 0 r . . 8 8 8 8 0 0 0 0 0 0 0 0 0 None 0x25 24 tc 0 32 0 r y . 8 8 8 8 0 24 8 0 0 0 0 0 0 None 0x26 24 tc 0 32 0 r . . 8 8 8 8 0 24 8 0 0 0 0 0 0 None 0x27 24 tc 0 32 0 r y . 8 8 8 8 0 0 0 16 16 16 16 0 0 Slow 0x28 24 tc 0 32 0 r . . 8 8 8 8 0 0 0 16 16 16 16 0 0 Slow 0x29 24 tc 0 32 0 r y . 8 8 8 8 0 24 8 16 16 16 16 0 0 Slow 0x2a 24 tc 0 32 0 r . . 8 8 8 8 0 24 8 16 16 16 16 0 0 Slow 0x2b 24 dc 0 32 0 r y . 8 8 8 8 0 0 0 0 0 0 0 0 0 None 0x2c 24 dc 0 32 0 r . . 8 8 8 8 0 0 0 0 0 0 0 0 0 None 0x2d 24 dc 0 32 0 r y . 8 8 8 8 0 24 8 0 0 0 0 0 0 None 0x2e 24 dc 0 32 0 r . . 8 8 8 8 0 24 8 0 0 0 0 0 0 None 0x2f 24 dc 0 32 0 r y . 8 8 8 8 0 0 0 16 16 16 16 0 0 Slow 0x30 24 dc 0 32 0 r . . 8 8 8 8 0 0 0 16 16 16 16 0 0 Slow 0x31 24 dc 0 32 0 r y . 8 8 8 8 0 24 8 16 16 16 16 0 0 Slow 0x32 24 dc 0 32 0 r . . 8 8 8 8 0 24 8 16 16 16 16 0 0 Slow 0x73 32 tc 0 32 0 r . . 8 8 8 8 0 0 0 0 0 0 0 0 0 Ncon
Created attachment 10881 [details] Xorg.0.log for for the above The Xorg.0.log in the above working case is attached.
Hi, can't help you, but can you say what Intel drive version and Mesa version do you use ?
Mesa version 7.0 release. Intel driver xf86-video-intel git master commit id 45962eed51120ff77326c29d72cf8b6cd8a934b5
just cheking add you install linux-agp-compat, it is needed for new i915tex_dri http://gitweb.freedesktop.org/?p=mesa/linux-agp-compat.git;a=summary
Yes the linux-agp-compat is installed. The working logs attached above use the same agpgart and intel-agp as the crashing one.
with git reset bc7d6c76fab2ff4d2f11b6bd84ca8b8f124729fd git log commit bc7d6c76fab2ff4d2f11b6bd84ca8b8f124729fd Author: Patrice Mandin <patrice@manoir.racoon.city> Date: Sat Jul 14 18:32:11 2007 +0200 nouveau: nv10 and nv11/15 are different I could enable i915tex without problems with xf86-video-intel 2.0.0-4 but with git head I couldn't have i915tex with git of xf86-video-intel I had other problem too
Could you describe what happens if you try to use the drm git head with i915tex (kernel log, Xorg.0.log)?
To use git drm head , we need also update libdrm else fails to init DRM memory manager. (In reply to comment #10) > with > git reset bc7d6c76fab2ff4d2f11b6bd84ca8b8f124729fd Correction here is: git checkout bc7d6c76fab2ff4d2f11b6bd84ca8b8f124729fd
In the above described problem I have used the libdrm for each case from the same commit as the kernel modules and compiled Mesa xorg-server and xf86-video-intel with it. The only components changed between the working case and the non-working case are libdrm and drm kernel modules, the rest is just recompiled.
Created attachment 10923 [details] [review] patch for correct libdrm version I do apply the attached patch for compiling libdrm though.
where are you getting a libdrm 2.3.0 from? just compile the drm tree in git for 2.3.1 hacking the version number s crazy.
I am using the git tree. The configure.ac in the tree shows package version 2.3.1. If I don't use the patch, the library libdrm.so.2.3.0 is created but the libdrm.pc still contains 2.3.1 as the version number.
For pkg-config checks in during configure (e.g. in xorg-server and xf86-video-intel) the suffix of the library does not matter, what matters is the version is the .pc file. Even if I don't use the version patch, they still see the version of the libdrm as 2.3.1.
Of course that still does not explain why I get the segfault if glxinfo if I use drm git commit id 7e6d08f670a55d79ee037144aa29104e4e8fc700 but not when I use commit id bc7d6c76fab2ff4d2f11b6bd84ca8b8f124729fd.
(In reply to comment #16) > If I don't use the patch, the library libdrm.so.2.3.0 is created but the > libdrm.pc still contains 2.3.1 as the version number. the library version and package version are different things, and do not have to be equal.
(In reply to comment #18) > Of course that still does not explain why I get the segfault if glxinfo if I > use drm git commit id 7e6d08f670a55d79ee037144aa29104e4e8fc700 but not when I > use commit id bc7d6c76fab2ff4d2f11b6bd84ca8b8f124729fd. > I had glxinfo segfault after after a new libdrm , you will need recompile mesa or at least glxinfo, and will wok again . My guess about this behavior is because glxinfo depends on libdrm.so.2 see ldd `which glxinfo`
Comment on attachment 10923 [details] [review] patch for correct libdrm version Alright, so I will not use the patch anymore. The main problem is the segfault however. Do you think that will go away if I get rid of the patch? I'll recompile everything and try again.
Ok, I recompiled everything after checking out the current drm git head commit id 283eaa25594347267df4e6e5eedbb9d17bb3682c I compiled libdrm this time without my patch, recompiled Mesa, recompiled xorg-server and xf86-video-intel. This time I did not get any segfault. The only difference this time from the last try was not using the version patch. Strange that the library version patchlevel change would make such a difference.
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.