Steven J Newbury wrote: > On Wed, 2008-06-25 at 21:14 +0100, Steven J Newbury wrote: >> On Wed, 2008-06-25 at 20:03 +0100, Steven J Newbury wrote: >>> On Wed, 2008-06-25 at 11:30 -0700, Jesse Barnes wrote: >>>> On Wednesday, June 25, 2008 10:28 am Steven J Newbury wrote: >>>>> On Wed, 2008-06-25 at 16:29 +0100, Johannes Engel wrote: >>>>>> Steven J Newbury wrote: >>>>>>> When building with a separate objdir -I$(top_srcdir)/libdrm needs to be >>>>>>> added to the intel Makefile.am otherwise only $(top_builddir)/libdrm is >>>>>>> included which doesn't contain the source headers. >>>>>>> >>>>>>> I've also been unable to build the drm-gem DRM module against the >>>>>>> current git linux tree, what changes are needed (to the linux headers; >>>>>>> and symbol exports?) and is there a patch? >>>>>> Have a look at bug #16474. Also you need to export symbols shmem_getpage >>>>>> and shmem_file_setup via EXPORT_SYMBOL in <kernel-source>/mm/shmem.c. >>>>>> For me it compiles using this changes but does not work stable since it >>>>>> crashes once you start for example glxgears. >>>>>> >>>>>> Cheers, Johannes >>>>> Thanks Johannes, I spotted that soon after posting (I filter the >>>>> bugzilla messages separately) and have just tried it. Unfortunately, I >>>>> don't even get that far, drm reports that it "fails to map the ring >>>>> buffer" and X fails to start. :( >>>> Are you running the drm-gem branch of the 2D driver as well? >>> It certainly should have been! :) >>> >>> I'll give it another try tomorrow. > OK. I tried i again. I get the following oops in my kernel log: > > Jun 26 03:23:32 infinity [drm:i915_gem_init_ringbuffer] *ERROR* Failed > to map ringbuffer. > Jun 26 03:23:32 infinity ------------[ cut here ]------------ > Jun 26 03:23:32 infinity kernel BUG > at > /var/tmp/portage/x11-base/x11-drm-99999999/work/drm/linux-core/drm_gem.c:378! > Jun 26 03:23:32 infinity invalid opcode: 0000 [1] PREEMPT SMP > Jun 26 03:23:32 infinity CPU 0 > Jun 26 03:23:32 infinity Modules linked in: snd_pcm_oss snd_mixer_oss > snd_seq_oss snd_seq_midi_event snd_seq snd_seq_device fuse bridge llc > bnep rfcomm l2cap cpufreq_ondemand acpi_cpufreq coretemp smsc47m192 > hwmon_vid i915 drm tpm_tis tpm tpm_bios rfkill hci_usb bluetooth arc4 > ecb pcmcia firewire_ohci firewire_core crc_itu_t snd_hda_intel iwl3945 > mac80211 led_class snd_pcm snd_timer yenta_socket rsrc_nonstatic > pcmcia_core snd_page_alloc pcspkr cfg80211 tg3 snd_hwdep snd soundcore > joydev [last unloaded: microcode] > Jun 26 03:23:32 infinity Pid: 4369, comm: X Not tainted > 2.6.26-rc8-00010-g0233dfa #18 > Jun 26 03:23:32 infinity RIP: 0010:[<ffffffffa017203a>] > [<ffffffffa017203a>] :drm:drm_gem_object_free+0x13/0x52 > Jun 26 03:23:32 infinity RSP: 0018:ffff810077c4dbf8 EFLAGS: 00010246 > Jun 26 03:23:32 infinity RAX: 0000000000000001 RBX: ffff81007c053000 > RCX: 0000000000000000 > Jun 26 03:23:32 infinity RDX: 0000000000000000 RSI: 0000000000000040 > RDI: ffff810072cbb240 > Jun 26 03:23:32 infinity RBP: ffff810072cbb240 R08: ffffffff806fefc0 > R09: ffff810001016f98 > Jun 26 03:23:32 infinity R10: 00000008ef78621b R11: 0000000000000046 > R12: ffff81007c055000 > Jun 26 03:23:32 infinity R13: ffff81007c053000 R14: 00000000ffffffea > R15: ffff810079c168a0 > Jun 26 03:23:32 infinity FS: 00007fd0de851740(0000) > GS:ffffffff80747000(0000) knlGS:0000000000000000 > Jun 26 03:23:32 infinity CS: 0010 DS: 0000 ES: 0000 CR0: > 0000000080050033 > Jun 26 03:23:32 infinity CR2: 00000000004c7010 CR3: 0000000077c1f000 > CR4: 00000000000006e0 > Jun 26 03:23:32 infinity DR0: 0000000000000000 DR1: 0000000000000000 > DR2: 0000000000000000 > Jun 26 03:23:32 infinity DR3: 0000000000000000 DR6: 00000000ffff0ff0 > DR7: 0000000000000400 > Jun 26 03:23:32 infinity Process X (pid: 4369, threadinfo > ffff810077c4c000, task ffff81007d83ad80) > Jun 26 03:23:32 infinity Stack: 0000000000020000 ffff810072cbb240 > ffffffffa0172027 ffffffff803d505d > Jun 26 03:23:32 infinity ffff81007c053000 ffff81007c055000 > ffff810072cbb240 ffffffffa01907b1 > Jun 26 03:23:32 infinity ffff8100795879d0 ffffffffa0198cf8 > 0000000000006459 ffffffffa0190679 > Jun 26 03:23:32 infinity Call Trace: > Jun 26 03:23:32 infinity [<ffffffffa0172027>] ? :drm:drm_gem_object_free > +0x0/0x52 > Jun 26 03:23:32 infinity [<ffffffff803d505d>] ? kref_put+0x41/0x4c > Jun 26 03:23:32 infinity > [<ffffffffa01907b1>] ? :i915:i915_gem_entervt_ioctl+0x138/0x251 > Jun 26 03:23:32 infinity > [<ffffffffa0190679>] ? :i915:i915_gem_entervt_ioctl+0x0/0x251 > Jun 26 03:23:32 infinity [<ffffffffa0163990>] ? :drm:drm_unlocked_ioctl > +0x19b/0x213 > Jun 26 03:23:32 infinity [<ffffffff8038ac14>] ? xfs_iunlock+0x1d/0x7c > Jun 26 03:23:32 infinity [<ffffffff803aebd3>] ? xfs_write+0x6cd/0x6e8 > Jun 26 03:23:32 infinity [<ffffffff80273600>] ? handle_mm_fault > +0x39c/0x759 > Jun 26 03:23:32 infinity [<ffffffff8028be2f>] ? do_sync_write+0xce/0x113 > Jun 26 03:23:32 infinity [<ffffffff80246ae4>] ? getnstimeofday+0x38/0x92 > Jun 26 03:23:32 infinity [<ffffffff8021ffe8>] ? do_page_fault > +0x47e/0x832 > Jun 26 03:23:32 infinity [<ffffffff80244cde>] ? ktime_get_ts+0x21/0x4a > Jun 26 03:23:32 infinity [<ffffffff80244d13>] ? ktime_get+0xc/0x41 > Jun 26 03:23:32 infinity [<ffffffff80228fee>] ? hrtick_start_fair > +0x11a/0x164 > Jun 26 03:23:32 infinity [<ffffffff8020a9bb>] ? __switch_to+0x30c/0x31a > Jun 26 03:23:32 infinity [<ffffffff80229cef>] ? hrtick_set+0x8b/0x10a > Jun 26 03:23:32 infinity [<ffffffffa0163a19>] ? :drm:drm_ioctl+0x11/0x13 > Jun 26 03:23:32 infinity [<ffffffff80297a76>] ? vfs_ioctl+0x56/0x6c > Jun 26 03:23:32 infinity [<ffffffff80297cad>] ? do_vfs_ioctl+0x221/0x237 > Jun 26 03:23:32 infinity [<ffffffff8028c75b>] ? vfs_write+0x121/0x156 > Jun 26 03:23:32 infinity [<ffffffff80297d00>] ? sys_ioctl+0x3d/0x5d > Jun 26 03:23:32 infinity [<ffffffff8020bf0b>] ? system_call_after_swapgs > +0x7b/0x80 > Jun 26 03:23:32 infinity > Jun 26 03:23:32 infinity > Jun 26 03:23:32 infinity Code: e8 08 30 26 e0 48 c7 c6 27 20 17 a0 48 89 > df e8 f9 2f 26 e0 31 c0 5b c3 55 48 89 fd 53 48 83 ec 08 48 8b 5f 08 83 > 7b 28 01 75 04 <0f> 0b eb fe 48 8b 83 28 04 00 00 48 8b 80 10 01 00 00 > 48 85 c0 > Jun 26 03:23:32 infinity RIP > [<ffffffffa017203a>] :drm:drm_gem_object_free+0x13/0x52 > Jun 26 03:23:32 infinity RSP <ffff810077c4dbf8> > Jun 26 03:23:32 infinity ---[ end trace fa4c1815fc66f181 ]--- > Jun 26 03:23:33 infinity [drm:drm_release] *ERROR* Device busy: 1 0 >
I'm getting a similar oops with todays linux-2.6 (Linus' kernel tree) plus Eric Anholt's drm-gem-merge pulled in: [drm] Initialized drm 1.1.0 20060810 pci 0000:00:02.0: power state changed by ACPI to D0 pci 0000:00:02.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16 pci 0000:00:02.0: setting latency timer to 64 [drm] Initialized i915 1.6.0 20080730 on minor 0 [drm:i915_gem_init_ringbuffer] *ERROR* Failed to map ringbuffer. ------------[ cut here ]------------ kernel BUG at drivers/gpu/drm/drm_gem.c:378! invalid opcode: 0000 [1] PREEMPT SMP CPU 1 Modules linked in: i915 drm ehci_hcd Pid: 3746, comm: Xorg Not tainted 2.6.27-rc3-00225-g073c0d0 #20 RIP: 0010:[<ffffffffa000f9a3>] [<ffffffffa000f9a3>] drm_gem_object_free+0x53/0x60 [drm] RSP: 0018:ffff88007a8efde8 EFLAGS: 00010246 RAX: ffff88007a857001 RBX: ffff88007b412800 RCX: 0000000000000000 RDX: 0000000000000000 RSI: ffffffffa000f950 RDI: ffff880074d5c3c0 RBP: ffff88007a8efdf8 R08: 0000000000000000 R09: ffff88007a857020 R10: 0000000000000000 R11: ffff880001018e30 R12: ffff880074d5c3c0 R13: ffff88007b412800 R14: ffff88007d113ea0 R15: ffff88007a857000 FS: 00007f0589aa46f0(0000) GS:ffff88007d009580(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003b CR2: 00000000009a3000 CR3: 00000000798a0000 CR4: 00000000000006e0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400 Process Xorg (pid: 3746, threadinfo ffff88007a8ee000, task ffff8800798e95c0) Stack: ffff880074d5c3c0 ffffffffa000f950 ffff88007a8efe18 ffffffff80421e37 ffff88007a857000 ffff880074d5c3c0 ffff88007a8efe58 ffffffffa00283c3 000000007a8efe58 ffff88007b412800 0000000000000059 ffff88007a990d00 Call Trace: [<ffffffffa000f950>] ? drm_gem_object_free+0x0/0x60 [drm] [<ffffffff80421e37>] kref_put+0x37/0x70 [<ffffffffa00283c3>] i915_gem_entervt_ioctl+0x413/0x440 [i915] [<ffffffffa000ebb4>] drm_ioctl+0x1d4/0x300 [drm] [<ffffffff80279af8>] ? __free_pages+0x18/0x30 [<ffffffffa0027fb0>] ? i915_gem_entervt_ioctl+0x0/0x440 [i915] [<ffffffff802b013a>] vfs_ioctl+0x7a/0x90 [<ffffffff802b03bb>] do_vfs_ioctl+0x26b/0x2d0 [<ffffffff802b046a>] sys_ioctl+0x4a/0x80 [<ffffffff8020b8cb>] system_call_fastpath+0x16/0x1b Code: d0 49 8b 7c 24 10 e8 0d 44 29 e0 f0 ff 8b 18 04 00 00 49 8b 44 24 18 f0 29 83 1c 04 00 00 4c 89 e7 e8 62 e0 28 e0 5b 41 5c c9 c3 <0f> 0b eb fe 66 0f 1f 84 00 00 00 00 00 55 48 89 e5 48 83 ec 10 RIP [<ffffffffa000f9a3>] drm_gem_object_free+0x53/0x60 [drm] RSP <ffff88007a8efde8> ---[ end trace f3c849d6cd363a6c ]--- [drm:drm_release] *ERROR* Device busy: 1 0 ------------------------------------------------------------------------- This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK & win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100&url=/ -- _______________________________________________ Dri-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/dri-devel
