[needs 7.9.1] [RS482] pipes assert failure: pipes: ../../radeon/radeon_cs_gem.c:129: cs_gem_write_reloc: Assertion `boi->space_accounted' failed.

Bug #602267 reported by YannUbuntu
20
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Mesa
Won't Fix
Medium
mesa (Ubuntu)
Fix Released
Medium
Unassigned

Bug Description

Binary package hint: xscreensaver

on Ubuntu 10.04 , using lubuntu-desktop session

ProblemType: Crash
DistroRelease: Ubuntu 10.04
Package: xscreensaver-gl-extra 5.10-3ubuntu4
ProcVersionSignature: Ubuntu 2.6.32-23.37-generic 2.6.32.15+drm33.5
Uname: Linux 2.6.32-23-generic i686
Architecture: i386
AssertionMessage: pipes: ../../radeon/radeon_cs_gem.c:129: cs_gem_write_reloc: Assertion `boi->space_accounted' failed.
CheckboxSubmission: 7bf4676ac92338d1d362954586c33b04
CheckboxSystem: bd9978d0ff03d4f55482fc24a6cdac35
Date: Tue Jul 6 22:12:06 2010
ExecutablePath: /usr/lib/xscreensaver/pipes
InstallationMedia: Ubuntu 10.04 "Lucid Lynx" - Alpha i386 (20100328)
ProcCmdline: pipes -root
ProcEnviron:
 PATH=(custom, no user)
 LANG=fr_FR.utf8
 SHELL=/bin/bash
Signal: 6
SourcePackage: xscreensaver
StacktraceTop:
 __kernel_vsyscall ()
 raise () from /lib/tls/i686/cmov/libc.so.6
 abort () from /lib/tls/i686/cmov/libc.so.6
 __assert_fail () from /lib/tls/i686/cmov/libc.so.6
 ?? () from /lib/libdrm_radeon.so.1
Title: pipes assert failure: pipes: ../../radeon/radeon_cs_gem.c:129: cs_gem_write_reloc: Assertion `boi->space_accounted' failed.
UserGroups: adm admin cdrom dialout lpadmin plugdev sambashare src
XsessionErrors:
 (polkit-gnome-authentication-agent-1:1479): GLib-CRITICAL **: g_once_init_leave: assertion `initialization_value != 0' failed
 (polkit-gnome-authentication-agent-1:1485): GLib-CRITICAL **: g_once_init_leave: assertion `initialization_value != 0' failed

Revision history for this message
YannUbuntu (yannubuntu) wrote :
visibility: private → public
Revision history for this message
Apport retracing service (apport) wrote :

StacktraceTop:
 __kernel_vsyscall ()
 *__GI_raise (sig=6)
 *__GI_abort () at abort.c:92
 *__GI___assert_fail (
 ?? () from /lib/libdrm_radeon.so.1

Revision history for this message
Apport retracing service (apport) wrote : Stacktrace.txt
Revision history for this message
Apport retracing service (apport) wrote : ThreadStacktrace.txt
Changed in xscreensaver (Ubuntu):
importance: Undecided → Medium
tags: removed: need-i386-retrace
summary: - pipes assert failure: pipes: ../../radeon/radeon_cs_gem.c:129:
+ [r300] pipes assert failure: pipes: ../../radeon/radeon_cs_gem.c:129:
cs_gem_write_reloc: Assertion `boi->space_accounted' failed.
affects: xscreensaver (Ubuntu) → mesa (Ubuntu)
Revision history for this message
Bryce Harrington (bryce) wrote : Re: [r300] pipes assert failure: pipes: ../../radeon/radeon_cs_gem.c:129: cs_gem_write_reloc: Assertion `boi->space_accounted' failed.

Hi YannUbuntu,

        Please attach the output of `lspci -vvnn` too.

    [This is an automated message. Apologies if it has reached you inappropriately; please just reply to this message indicating so.]

tags: added: crash
tags: added: needs-xorglog
tags: added: needs-lspci-vvnn
Changed in mesa (Ubuntu):
status: New → Incomplete
Revision history for this message
YannUbuntu (yannubuntu) wrote :

Here it is. (from my GNOME session, please tell me if I need to do it from my Lubuntu session).

Changed in mesa (Ubuntu):
status: Incomplete → New
Revision history for this message
Tormod Volden (tormodvolden) wrote : Re: [RS482] pipes assert failure: pipes: ../../radeon/radeon_cs_gem.c:129: cs_gem_write_reloc: Assertion `boi->space_accounted' failed.

Can you please also attach your Xorg.0.log?

summary: - [r300] pipes assert failure: pipes: ../../radeon/radeon_cs_gem.c:129:
+ [RS482] pipes assert failure: pipes: ../../radeon/radeon_cs_gem.c:129:
cs_gem_write_reloc: Assertion `boi->space_accounted' failed.
Revision history for this message
YannUbuntu (yannubuntu) wrote :

Here it is

Revision history for this message
Tormod Volden (tormodvolden) wrote :

Does it happen every time you are using the "pipes" screensaver?

Revision history for this message
YannUbuntu (yannubuntu) wrote :

Yes. I can repeat every time I use the "pipe" screensaver. I could not reproduce with another screensaver.
Please see Bug #603495 (another Apport report, if it is duplicate don't hesitate to mark it).

Bryce Harrington (bryce)
tags: added: hardy
Bryce Harrington (bryce)
Changed in mesa (Ubuntu):
status: New → Confirmed
Revision history for this message
Tormod Volden (tormodvolden) wrote :

Does it happen if you just run /usr/lib/xscreensaver/pipes on the command line?

tags: removed: hardy needs-lspci-vvnn needs-xorglog
Revision history for this message
YannUbuntu (yannubuntu) wrote :

Yes. The window opens with the pipes screensaver, and suddenly closes (I cannot see the 2 error lines neither black screen, unlike Bug #603495) after ~8 seconds. Here is the log :

$ /usr/lib/xscreensaver/pipes
pipes: ../../radeon/radeon_cs_gem.c:129: cs_gem_write_reloc: Assertion `boi->space_accounted' failed.
Abandon (core dumped)

Revision history for this message
Tormod Volden (tormodvolden) wrote :

Can you please try to get a backtrace following the instructions on https://wiki.ubuntu.com/Backtrace ?
You will have to install libdrm-radeon1-dbg and libgl1-mesa-dri-dbg first.

Revision history for this message
YannUbuntu (yannubuntu) wrote :

Here is the backtrace (i did $ gdb /usr/lib/xscreensaver/pipes 2>&1 | tee ~/gdb-pipes.txt)

Revision history for this message
Tormod Volden (tormodvolden) wrote :

Oh no, the mesa debug packages are (still) broken :( Sorry about that. Can you please remove libgl1-mesa-dri-dbg and install libgl1-mesa-dri-dbgsym instead, following the instructions on https://wiki.ubuntu.com/DebuggingProgramCrash ?

Revision history for this message
YannUbuntu (yannubuntu) wrote :

ok, here is the new backtrace

Revision history for this message
Tormod Volden (tormodvolden) wrote :

Sorry, the -dbgsym packages are also broken. I'd suggest you reinstall the -dbg packages, and "hot-fix" them for this purpose with:
 sudo objcopy -R .gnu_debuglink --add-gnu-debuglink=/usr/lib/debug/usr/lib/dri/r300_dri.so /usr/lib/dri/r300_dri.so
 sudo objcopy -R .gnu_debuglink --add-gnu-debuglink=/usr/lib/debug/usr/lib/mesa/libGL.so.1.2 /usr/lib/mesa/libGL.so.1.2

A future update of the mesa packages will also fix the debug packages.

Revision history for this message
YannUbuntu (yannubuntu) wrote :

I uninstalled the -dbgsym package and reinstalled the -dbg one.
Your first command in comment #17 went ok, but the 2nd one gave me this error :

$ sudo objcopy -R .gnu_debuglink --add-gnu-debuglink=/usr/lib/debug/usr/lib/mesa/libGL.so.1.2 /usr/lib/mesa/libGL.so.1.2
objcopy:/usr/lib/mesa/stPMq9L6: cannot fill debug link section `/usr/lib/debug/usr/lib/mesa/libGL.so.1.2': No such file or directory

Can I continue, or is there something wrong ?

Revision history for this message
Tormod Volden (tormodvolden) wrote :

My fault, I forgot to ask you to install libgl1-mesa-glx-dbg. Then rerun the 2nd command.

Revision history for this message
YannUbuntu (yannubuntu) wrote :

3rd backtrace

Revision history for this message
Tormod Volden (tormodvolden) wrote :

Perfect, thanks for your patience. It would be useful to know if this still happens with latest upstream. To test this you can get the mesa packages from https://launchpad.net/~xorg-edgers/+archive/radeon and test both using:
 LIBGL_DRIVERS_DIR=/usr/lib/dri /usr/lib/xscreensaver/pipes
(for gallium drivers) and
 LIBGL_DRIVERS_DIR=/usr/lib/dri-classic /usr/lib/xscreensaver/pipes
(for classic drivers).

Revision history for this message
YannUbuntu (yannubuntu) wrote :

is there a risk for my system to become unstable? or to loose display or something?

I have a VirtualBox machine with Maverick, I would prefer to test dangerous things in virtual machine...

Revision history for this message
Tormod Volden (tormodvolden) wrote :

Yes, there is a small risk you get an unstable system until you reinstall the default mesa packages again. But in most cases you can log in with "failsafe Gnome session" or "failsafe terminal" which will not start compiz (the mesa libraries are hardly used in this case) so that you can reinstall the default packages. Of course if you don't feel confident about it, don't do it.

I am not sure testing in a virtual box will be good enough since these drivers work closely against the hardware. But you can of course try that first since it is very safe.

Revision history for this message
YannUbuntu (yannubuntu) wrote :

Ok, I installed the PPA packages.

First one does not crash, and gives this message in terminal:
$ LIBGL_DRIVERS_DIR=/usr/lib/dri /usr/lib/xscreensaver/pipes
radeon: The kernel rejected CS, see dmesg for more information.

Second one crashes after ~7seconds (see terminal message below), but I don't know how to give you the backtrace.
$ LIBGL_DRIVERS_DIR=/usr/lib/dri-classic /usr/lib/xscreensaver/pipes
pipes: ../../radeon/radeon_cs_gem.c:129: cs_gem_write_reloc: Assertion `boi->space_accounted' failed.
Abandon (core dumped)

Revision history for this message
Tormod Volden (tormodvolden) wrote :

Can you please run "dmesg > dmesg.txt" and attach dmesg.txt after trying the first line (gallium driver) again?

The second line (classic driver) can be debugged with gdb like this:
 LIBGL_DRIVERS_DIR=/usr/lib/dri-classic gdb /usr/lib/xscreensaver/pipes
and then follow the backtrace instructions as you did earlier.

Revision history for this message
YannUbuntu (yannubuntu) wrote :
Revision history for this message
YannUbuntu (yannubuntu) wrote :

The backtrace with
LIBGL_DRIVERS_DIR=/usr/lib/dri-classic gdb /usr/lib/xscreensaver/pipes
did not create any file. I attach the terminal log.

Revision history for this message
In , Bugzi09-fdo-tormod (bugzi09-fdo-tormod) wrote :

Created an attachment (id=37056)
full backtrace (classic driver from git)

Originally reported on Ubuntu 10.04 in https://bugs.launchpad.net/bugs/602267 and the user has also tested latest git, classic and gallium.

Running "pipes" from xscreensaver crashes on RS482 with this message:
pipes: ../../radeon/radeon_cs_gem.c:129: cs_gem_write_reloc: Assertion `boi->space_accounted' failed.
(see attached backtrace)

With gallium, it does not crash but this message is seen:
radeon: The kernel rejected CS, see dmesg for more information.
dmesg contains:
[drm:r100_cs_packet_parse] *ERROR* Packet (351:3:16383) end after CS buffer (1020) !
[drm:radeon_cs_ioctl] *ERROR* Invalid command stream !

Hardware:
01:05.0 VGA compatible controller [0300]: ATI Technologies Inc RS482 [Radeon Xpress 200M] [1002:5975]
 Subsystem: NEC Corporation Device [1033:8800]

Revision history for this message
In , Bugzi09-fdo-tormod (bugzi09-fdo-tormod) wrote :

Created an attachment (id=37057)
dmesg output including gallium run

Revision history for this message
Tormod Volden (tormodvolden) wrote : Re: [RS482] pipes assert failure: pipes: ../../radeon/radeon_cs_gem.c:129: cs_gem_write_reloc: Assertion `boi->space_accounted' failed.

Thanks for all the information. This should be enough for a developer to dig into. I have forwarded the bug report upstream at https://bugs.freedesktop.org/show_bug.cgi?id=29066. Feel free to subscribe to the upstream report to be able to answer questions from the developers directly. We will of course assist you in obtaining more information, apply any test patches and so on. Thanks in advance.

Revision history for this message
In , Marek Olšák (maraeo) wrote :

Bad news. It works for me on RV530 and RV350 with both TCL turned on and off.

RS482 is RV350-based IIRC.

Kernel 2.6.35-rc3, libdrm from git.

Revision history for this message
YannUbuntu (yannubuntu) wrote : Re: [RS482] pipes assert failure: pipes: ../../radeon/radeon_cs_gem.c:129: cs_gem_write_reloc: Assertion `boi->space_accounted' failed.

Ok, I subscribed to it. Thank you for your help Tormod !

Revision history for this message
Tormod Volden (tormodvolden) wrote :

Would it be possible for you to try the latest kernel, for instance from here: http://kernel.ubuntu.com/~kernel-ppa/mainline/v2.6.35-rc5-maverick/ You only need to install the linux-image-2.6.35-020635rc5-generic_2.6.35-020635rc5_i386.deb, and you will keep the old kernel.

Revision history for this message
YannUbuntu (yannubuntu) wrote :

Ok, I installed it. Now what should I do ?

Revision history for this message
Tormod Volden (tormodvolden) wrote :

Reboot into the new kernel, the grub menu should let you select kernel, and the new one should be the default choice. (You can run "uname -r" to verify which kernel you are currently using). Then see if you get the same crash or error messages when you run /usr/lib/xscreensaver/pipes.

Revision history for this message
In , Bugzi09-fdo-tormod (bugzi09-fdo-tormod) wrote :

Yes, I don't know if they are closer to RV350 or to RV370. One difference from those is that RS4xx have only two render output units, but that's irrelevant for the driver, right? All I know is that these Xpress IGP have all kind of problems.

Would it be important to try latest libdrm? Ubuntu 10.04 has only 2.4.18.

Revision history for this message
In , Marek Olšák (maraeo) wrote :

(In reply to comment #3)
> Yes, I don't know if they are closer to RV350 or to RV370. One difference from
> those is that RS4xx have only two render output units, but that's irrelevant
> for the driver, right?

It should be.

> Would it be important to try latest libdrm? Ubuntu 10.04 has only 2.4.18.

I can't tell for sure, though there are a few fixes since 2.4.18.

Revision history for this message
In , YannUbuntu (yannubuntu) wrote :

Dear all,
I am the Launchpad bug reporter.

I tried kernel 2.6.35-020635rc5-generic , and I see no change when running /usr/lib/xscreensaver/pipes :
I get the same error message ("radeon: The kernel rejected CS, see dmesg for more information.") in terminal and the screensaver does not crash (like with the normal Lucid kernel).

Revision history for this message
YannUbuntu (yannubuntu) wrote : Re: [RS482] pipes assert failure: pipes: ../../radeon/radeon_cs_gem.c:129: cs_gem_write_reloc: Assertion `boi->space_accounted' failed.

Same error message in terminal and the screensaver does not crash (like with the normal Lucid kernel).

$ /usr/lib/xscreensaver/pipes
radeon: The kernel rejected CS, see dmesg for more information.
^C
$ uname -r
2.6.35-020635rc5-generic

Revision history for this message
In , Marek Olšák (maraeo) wrote :

Yann> Is the error in dmesg still the same, i.e. "Packet (351:3:16383) end after CS buffer"?

Revision history for this message
In , YannUbuntu (yannubuntu) wrote :

(In reply to comment #6)
> Yann> Is the error in dmesg still the same, i.e. "Packet (351:3:16383) end
> after CS buffer"?

Yes, I tried again with rc6, and I get the following error :

[ 288.532079] [drm:r100_cs_packet_parse] *ERROR* Packet (354:3:16383) end after CS buffer (1026) !
[ 288.532086] [drm:radeon_cs_ioctl] *ERROR* Invalid command stream !

Revision history for this message
In , Marek Olšák (maraeo) wrote :

Have you compiled mesa with --enable-debug? It might give you some nice assertion failures hopefully.

Revision history for this message
In , YannUbuntu (yannubuntu) wrote :

(In reply to comment #8)
> Have you compiled mesa with --enable-debug? It might give you some nice
> assertion failures hopefully.

i am not fan of compilation, but i can try it if it is necessary and if you explain me step-by-step :)

Revision history for this message
In , Marek Olšák (maraeo) wrote :

git clone git://anongit.freedesktop.org/mesa/mesa
cd mesa
./autogen.sh --with-dri-drivers= --with-state-trackers=dri --enable-debug --enable-glx-tls --enable-gallium-radeon --disable-gallium-swrast --disable-egl --disable-glu --disable-glut --disable-glw
make
cd lib/gallium
ln -s radeong_dri.so r300_dri.so
LIBGL_DRIVERS_PATH=. glxinfo|grep renderer # it should say Gallium 0.4 on R*
LIBGL_DRIVERS_PATH=. /usr/lib/xscreensaver/pipes

Revision history for this message
In , YannUbuntu (yannubuntu) wrote :

Thank you. Please how can I revert those changes after I test ? (I save my data, but this is my production PC so I would like to keep it as stable as possible)

Revision history for this message
In , Marek Olšák (maraeo) wrote :

It doesn't install anything, so there is nothing to revert. Your system will be untouched.

LIBGL_DRIVERS_PATH=some_path program

says that the 3D driver for the "program" is loaded from "some_path".

If you don't type "LIBGL_DRIVERS_PATH=some_path", the driver will be loaded from your default system location.

Revision history for this message
In , YannUbuntu (yannubuntu) wrote :

> LIBGL_DRIVERS_PATH=. glxinfo|grep renderer # it should say Gallium 0.4 on R*

it said "OpenGL renderer string: Gallium 0.4 on RS482"

> LIBGL_DRIVERS_PATH=. /usr/lib/xscreensaver/pipes

works without crashing. Here is the terminal output :

yyy@yyy-laptop:~/mesa/lib/gallium$ LIBGL_DRIVERS_PATH=. /usr/lib/xscreensaver/pipes
radeon: Successfully grabbed chipset info from kernel!
radeon: DRM version: 2.5.0 ID: 0x5975 GB: 1 Z: 1
radeon: GART size: 29 MB VRAM size: 128 MB
debug_get_flags_option: RADEON_DEBUG = 0x0
debug_get_bool_option: RADEON_NO_TCL = FALSE
couldn't open libtxc_dxtn.so, software DXTn compression/decompression unavailable
debug_get_bool_option: GALLIUM_RBUG = FALSE
debug_get_option: GALLIUM_TRACE = (null)
debug_get_bool_option: GALLIUM_GALAHAD = FALSE
debug_get_bool_option: DRAW_FSE = FALSE
debug_get_bool_option: DRAW_NO_FSE = FALSE
debug_get_bool_option: GALLIUM_DUMP_VS = FALSE
debug_get_bool_option: GALLIUM_NOSSE = FALSE
Mesa: CPU vendor: AuthenticAMD
Mesa: CPU name: Mobile AMD Sempron(tm) Processor 3200+
Mesa: Mesa 7.9-devel DEBUG build Jul 27 2010 20:48:56
Mesa warning: couldn't open libtxc_dxtn.so, software DXTn compression/decompression unavailable
debug_get_bool_option: MESA_MVP_DP4 = FALSE
debug_get_flags_option: ST_DEBUG = 0x0
^C

Do you need some more log ?

Revision history for this message
In , Marek Olšák (maraeo) wrote :

If I understand this correctly, the gallium driver from the PPA prints "radeon: The kernel rejected CS, see dmesg for more information.", but the driver from git works like a charm. Is that correct?

Revision history for this message
In , Marek Olšák (maraeo) wrote :

According to the last feedback, this issue seems to be resolved by using the driver from git instead of the PPA. Closing..

Revision history for this message
In , YannUbuntu (yannubuntu) wrote :

Does it mean it will be solved in Ubuntu 10.10 ?
Or is there something Ubuntu developpers have to do ?
Do I need to add something in https://bugs.launchpad.net/bugs/602267 ?

Revision history for this message
Tormod Volden (tormodvolden) wrote : Re: [RS482] pipes assert failure: pipes: ../../radeon/radeon_cs_gem.c:129: cs_gem_write_reloc: Assertion `boi->space_accounted' failed.

Yann, do you still get the error message when using gallium with latest PPA packages? And does classic still crash?

Revision history for this message
YannUbuntu (yannubuntu) wrote :

Hi Tormod,
I updated my packages with the latest PPA :
- gallium works fine
- classic does not crash, but does not show any pipe, just black screen, so I tried a Backtrace: after the (gdb) run , the black window appears, and after ~10 seconds the (gdb) window displays the following message :
(gdb) run
Starting program: /usr/lib/xscreensaver/pipes
[Thread debugging using libthread_db enabled]
pipes: ../../radeon/radeon_cs_gem.c:129: cs_gem_write_reloc: Assertion `boi->space_accounted' failed.
Program received signal SIGABRT, Aborted.
0x0012d422 in __kernel_vsyscall ()

Then I continue the Backtrace procedure, until:
(gdb) quit
A debugging session is active.
 Inferior 1 [process 3781] will be killed.
Quit anyway? (y or n)

Here I press Y, but no file appears in my Personnal folder... so I can't give you any Backtrace. (FYI the black window did not close until I press Y)

Changed in mesa:
importance: Unknown → Medium
status: Unknown → Won't Fix
Revision history for this message
Oibaf (oibaf) wrote :
Revision history for this message
Tormod Volden (tormodvolden) wrote :

That commit seems to be for r200 and not r300 like in this bug report. Anyway the commit is included in maverick packages in the PPA described in comment 22, so please test it out.

Revision history for this message
Oibaf (oibaf) wrote :

r100 and r300 are still not fixed, they should need a similar patch. See also the thread at:
http://lists.freedesktop.org/archives/mesa-dev/2010-October/003491.html

Revision history for this message
Oibaf (oibaf) wrote :

r300c should be fixed by the following commit, also scheduled for 7.9.1:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=d8eef5196fcd6f51e443d4dfa0fda8aadc668f9f

summary: - [RS482] pipes assert failure: pipes: ../../radeon/radeon_cs_gem.c:129:
- cs_gem_write_reloc: Assertion `boi->space_accounted' failed.
+ [needs 7.9.1] [RS482] pipes assert failure: pipes:
+ ../../radeon/radeon_cs_gem.c:129: cs_gem_write_reloc: Assertion
+ `boi->space_accounted' failed.
Changed in mesa:
importance: Medium → Unknown
Changed in mesa:
importance: Unknown → Medium
Revision history for this message
Oibaf (oibaf) wrote :

Fixed on natty shipping 7.10.1.

Changed in mesa (Ubuntu):
status: Confirmed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.