kernel BUG at /build/buildd/linux-2.6.35/drivers/gpu/drm/i915/i915_gem.c:4224!; EIP is at i915_gem_object_unpin+0xbb/0xd0 [i915]

Bug #696327 reported by Imre Deak
34
This bug affects 6 people
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Expired
Undecided
Unassigned

Bug Description

Kernel crash during random activity in X session:

Jan 1 16:32:11 oona-taptop kernel: [24961.860076] ------------[ cut here ]------------
Jan 1 16:32:11 oona-taptop kernel: [24961.860085] kernel BUG at /build/buildd/linux-2.6.35/drivers/gpu/drm/i915/i915_gem.c:4224!
Jan 1 16:32:11 oona-taptop kernel: [24961.860089] invalid opcode: 0000 [#1] SMP
Jan 1 16:32:11 oona-taptop kernel: [24961.860093] last sysfs file: /sys/devices/virtual/backlight/acpi_video0/actual_brightness
Jan 1 16:32:11 oona-taptop kernel: [24961.860097] Modules linked in: aes_i586 aes_generic rfcomm sco bnep parport_pc l2cap ppdev binfmt_misc arc4 thinkpad_acpi snd_seq_midi i915 drm_kms_helper iwl3945 snd_hda_codec_analog pcmcia snd_rawmidi drm snd_hda_intel iwlcore snd_seq_midi_event btusb snd_hda_codec snd_seq snd_hwdep mac80211 cfg80211 snd_seq_device snd_pcm bluetooth irda yenta_socket snd_timer i2c_algo_bit sierra pcmcia_rsrc snd_page_alloc intel_agp video output pcmcia_core tpm_tis tpm tpm_bios usbserial psmouse agpgart serio_raw crc_ccitt snd soundcore nvram lp parport raid10 raid456 async_raid6_recov async_pq raid6_pq async_xor xor async_memcpy sdhci_pci async_tx sdhci firewire_ohci raid1 e1000e firewire_core led_class crc_itu_t raid0 multipath linear
Jan 1 16:32:11 oona-taptop kernel: [24961.860184]
Jan 1 16:32:11 oona-taptop kernel: [24961.860189] Pid: 8758, comm: Xorg Not tainted 2.6.35-24-generic #42-Ubuntu 1704A12/1704A12
Jan 1 16:32:11 oona-taptop kernel: [24961.860193] EIP: 0060:[<f931962b>] EFLAGS: 00013296 CPU: 0
Jan 1 16:32:11 oona-taptop kernel: [24961.860211] EIP is at i915_gem_object_unpin+0xbb/0xd0 [i915]
Jan 1 16:32:11 oona-taptop kernel: [24961.860215] EAX: f22efc00 EBX: f3753000 ECX: 0003c47e EDX: ffffffff
Jan 1 16:32:11 oona-taptop kernel: [24961.860219] ESI: 0003c000 EDI: f3020000 EBP: f3685d08 ESP: f3685cfc
Jan 1 16:32:11 oona-taptop kernel: [24961.860222] DS: 007b ES: 007b FS: 00d8 GS: 00e0 SS: 0068
Jan 1 16:32:11 oona-taptop kernel: [24961.860227] Process Xorg (pid: 8758, ti=f3684000 task=f36bbf70 task.ti=f3684000)
Jan 1 16:32:11 oona-taptop kernel: [24961.860229] Stack:
Jan 1 16:32:11 oona-taptop kernel: [24961.860232] f3049800 f3753000 00000000 f3685d78 f9329848 00000004 f93470c0 f933ecac
Jan 1 16:32:11 oona-taptop kernel: [24961.860241] <0> f9344ad8 0a400000 00000000 00000000 00000000 00001000 f933d56b 00000000
Jan 1 16:32:11 oona-taptop kernel: [24961.860251] <0> 00000001 00000000 00000000 00001000 f3753014 f3020000 00000000 0a400000
Jan 1 16:32:11 oona-taptop kernel: [24961.860261] Call Trace:
Jan 1 16:32:11 oona-taptop kernel: [24961.860279] [<f9329848>] ? intel_pipe_set_base+0x298/0x440 [i915]
Jan 1 16:32:11 oona-taptop kernel: [24961.860289] [<f92a0efb>] ? drm_crtc_helper_set_config+0x6ab/0x830 [drm_kms_helper]
Jan 1 16:32:11 oona-taptop kernel: [24961.860298] [<c0351898>] ? idr_get_new_above+0x8/0x30
Jan 1 16:32:11 oona-taptop kernel: [24961.860320] [<f857d978>] ? drm_mode_setcrtc+0x238/0x330 [drm]
Jan 1 16:32:11 oona-taptop kernel: [24961.860335] [<f9329101>] ? intel_framebuffer_init+0x31/0x60 [i915]
Jan 1 16:32:11 oona-taptop kernel: [24961.860349] [<f932b3d7>] ? intel_user_framebuffer_create+0x47/0xa0 [i915]
Jan 1 16:32:11 oona-taptop kernel: [24961.860355] [<c05c8599>] ? mutex_lock+0x19/0x40
Jan 1 16:32:11 oona-taptop kernel: [24961.860369] [<f857198d>] ? drm_ioctl+0x1ad/0x430 [drm]
Jan 1 16:32:11 oona-taptop kernel: [24961.860383] [<f857d740>] ? drm_mode_setcrtc+0x0/0x330 [drm]
Jan 1 16:32:11 oona-taptop kernel: [24961.860391] [<c05cd01d>] ? do_page_fault+0x1cd/0x440
Jan 1 16:32:11 oona-taptop kernel: [24961.860397] [<c0226b42>] ? vfs_ioctl+0x32/0xb0
Jan 1 16:32:11 oona-taptop kernel: [24961.860408] [<f85717e0>] ? drm_ioctl+0x0/0x430 [drm]
Jan 1 16:32:11 oona-taptop kernel: [24961.860413] [<c02273d9>] ? do_vfs_ioctl+0x79/0x2d0
Jan 1 16:32:11 oona-taptop kernel: [24961.860419] [<c0218820>] ? do_sync_write+0x0/0xe0
Jan 1 16:32:11 oona-taptop kernel: [24961.860423] [<c0227697>] ? sys_ioctl+0x67/0x80
Jan 1 16:32:11 oona-taptop kernel: [24961.860428] [<c05c9cc4>] ? syscall_call+0x7/0xb
Jan 1 16:32:11 oona-taptop kernel: [24961.860431] Code: d1 8b 50 5c 8d 48 58 8b 70 58 89 56 04 89 32 8b 97 00 10 00 00 89 8f 00 10 00 00 81 c7 fc 0f 00 00 89 78 58 89 50 5c 89 0a eb a7 <0f> 0b eb fe 0f 0b eb fe 8d b6 00 00 00 00 8d bc 27 00 00 00 00
Jan 1 16:32:11 oona-taptop kernel: [24961.860487] EIP: [<f931962b>] i915_gem_object_unpin+0xbb/0xd0 [i915] SS:ESP 0068:f3685cfc
Jan 1 16:32:11 oona-taptop kernel: [24961.860505] ---[ end trace e99ca40ae4a0baf6 ]---

The following patch from mainline is a possible fix for the issue:

commit 11824e8c4e8a1279ee209173da777b2295b72e82
Author: Chris Wilson <email address hidden>
Date: Sun Jun 6 15:40:18 2010 +0100

    drm/i915: Silence sparse complaints over insufficient bitfield int types.

    drivers/gpu/drm/i915/i915_drv.h|676 col 19| warning: dubious bitfield without explicit `signed' or `unsigned'
    drivers/gpu/drm/i915/i915_drv.h|712 col 19| warning: dubious bitfield without explicit `signed' or `unsigned'

    Signed-off-by: Chris Wilson <email address hidden>
    Signed-off-by: Eric Anholt <email address hidden>

diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
index f8f315d..e40dcf2 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -673,7 +673,7 @@ struct drm_i915_gem_object {
         *
         * Size: 4 bits for 16 fences + sign (for FENCE_REG_NONE)
         */
- int fence_reg : 5;
+ signed int fence_reg : 5;

        /**
         * Used for checking the object doesn't appear more than once
@@ -709,7 +709,7 @@ struct drm_i915_gem_object {
         *
         * In the worst case this is 1 + 1 + 1 + 2*2 = 7. That would fit into 3
         * bits with absolutely no headroom. So use 4 bits. */
- int pin_count : 4;
+ unsigned int pin_count : 4;
 #define DRM_I915_GEM_OBJECT_MAX_PIN_COUNT 0xf

        /** AGP memory structure for our GTT binding. */

ProblemType: Bug
DistroRelease: Ubuntu 10.10
Package: linux-image-2.6.35-24-generic 2.6.35-24.42
Regression: Yes
Reproducible: No
ProcVersionSignature: Ubuntu 2.6.35-24.42-generic 2.6.35.8
Uname: Linux 2.6.35-24-generic i686
Architecture: i386
Date: Sat Jan 1 21:16:58 2011
Frequency: Once a day.
InstallationMedia: Ubuntu 9.10 "Karmic Koala" - Release i386 (20091028.5)
ProcEnviron:
 PATH=(custom, user)
 LANG=en_US.UTF-8
 SHELL=/bin/bash
SourcePackage: linux

Revision history for this message
Imre Deak (ideak) wrote :
tags: added: regression-release
removed: regression-potential
Revision history for this message
angus73 (angus73) wrote :

I experience this bug too, i.e. somethimes the screen blanks, and after a reboot I find the message "kernel BUG at /build/buildd/linux-2.6.35/drivers/gpu/drm/i915/i915_gem.c:4224!" in syslog.
I run Ubuntu Maverick on an Acer Travelmate laptop. Let me know if I should provide any log or some other information.

Revision history for this message
Chris Thompson (chris-thompson) wrote :

I suffer a X crash with the syslog/kernel log message
  kernel BUG at /build/buildd/linux-2.6.35/drivers/gpu/drm/i915/i915_gem.c:4224!
It has a different effect, but maybe is related?
2.6.35-25-generic #44-Ubuntu SMP Fri Jan 21 17:40:48 UTC 2011 i686 GNU/Linux
xserver-xorg-video-intel 2:2.12.0-1ubuntu5.1
00:02.0 VGA compatible controller: Intel Corporation Core Processor Integrated Graphics Controller (rev 12) (prog-if 00 [VGA controller])
 Subsystem: Giga-byte Technology Device d000
 Flags: bus master, fast devsel, latency 0, IRQ 45
 Memory at fb800000 (64-bit, non-prefetchable) [size=4M]
 Memory at e0000000 (64-bit, prefetchable) [size=256M]
 I/O ports at ff00 [size=8]
 Expansion ROM at <unassigned> [disabled]
 Capabilities: [90] MSI: Enable+ Count=1/1 Maskable- 64bit-
 Capabilities: [d0] Power Management version 2
 Capabilities: [a4] PCI Advanced Features
 Kernel driver in use: i915
 Kernel modules: i915

It is possibly related to wake up of the monitor(s) after being in a powered down state. I run the computer with monitors in a power down state and also with the power physically switched off. Movement of the mouse can initiate power up, but physical monitors may not be powered up.

The last entry in the Xorg file is
[299669.148] (II) AIGLX: Suspending AIGLX clients for VT switch

Revision history for this message
Chris Thompson (chris-thompson) wrote :
Revision history for this message
Chris Thompson (chris-thompson) wrote :

Another failure type where 100% CPU occurs in kslow00x process, possibly as a result of a failure in the video subsystem?
Whilst the affect is completely different, it is probably caused by power down/up confusion in the video/monitor system?

Syslog attached. note top of call stack at intel_crt_detect+0xa0/0xe0 [i915]

Revision history for this message
Brad Figg (brad-figg) wrote : Missing required logs.

This bug is missing log files that will aid in diagnosing the problem. From a terminal window please run:

apport-collect 696327

and then change the status of the bug to 'Confirmed'.

If, due to the nature of the issue you have encountered, you are unable to run this command, please add a comment stating that fact and change the bug status to 'Confirmed'.

This change has been made by an automated script, maintained by the Ubuntu Kernel Team.

Changed in linux (Ubuntu):
status: New → Incomplete
Revision history for this message
Imre Deak (ideak) wrote : Re: i915 DRM: BUG_ON(obj_priv->pin_count < 0) at i915_gem.c:4224

Can't reproduce any more, thus can't collect any more log files. The kernel log pasted into the bug description should be enough though. Setting status to 'Confirmed'.

Changed in linux (Ubuntu):
status: Incomplete → Confirmed
Revision history for this message
penalvch (penalvch) wrote :

seipher, thank you for reporting this bug and helping make Ubuntu better. This bug was reported a while ago and there hasn't been any activity in it recently. We were wondering if this is still an issue? Can you try with the latest development release of Ubuntu? ISO CD images are available from http://cdimage.ubuntu.com/releases/ .

If it remains an issue, could you run the following command from a Terminal (Applications->Accessories->Terminal). It will automatically gather and attach updated debug information to this report.

apport-collect -p linux <replace-with-bug-number>

Also, if you could test the latest upstream kernel available that would be great. It will allow additional upstream developers to examine the issue. Refer to https://wiki.ubuntu.com/KernelMainlineBuilds . Once you've tested the upstream kernel, please remove the 'needs-upstream-testing' tag. This can be done by clicking on the yellow pencil icon next to the tag located at the bottom of the bug description and deleting the 'needs-upstream-testing' text. Please let us know your results.

Thanks in advance.

summary: - i915 DRM: BUG_ON(obj_priv->pin_count < 0) at i915_gem.c:4224
+ kernel BUG at
+ /build/buildd/linux-2.6.35/drivers/gpu/drm/i915/i915_gem.c:4224!; EIP is
+ at i915_gem_object_unpin+0xbb/0xd0 [i915]
Changed in linux (Ubuntu):
status: Confirmed → Incomplete
Revision history for this message
Launchpad Janitor (janitor) wrote :

[Expired for linux (Ubuntu) because there has been no activity for 60 days.]

Changed in linux (Ubuntu):
status: Incomplete → Expired
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

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