1. 14 Mar, 2011 6 commits
    • Ben Skeggs's avatar
      drm/nv40: attempt to reserve just enough vram for all 32 channels · 459ca7e5
      Ben Skeggs authored
      This also makes the fact we're giving 512MiB of GART space to all PCIE
      boards explicit, although the vast majority (if not all) of them will
      now have a ramin_rsvd_vram larger than 2MiB anyway.
      Signed-off-by: default avatarBen Skeggs <bskeggs@redhat.com>
      459ca7e5
    • Ben Skeggs's avatar
      drm/nv50: check for vm traps on every gr irq · 6fdb383e
      Ben Skeggs authored
      Signed-off-by: default avatarBen Skeggs <bskeggs@redhat.com>
      6fdb383e
    • Ben Skeggs's avatar
      drm/nv50: decode vm faults some more · 312d1d5f
      Ben Skeggs authored
      Signed-off-by: default avatarBen Skeggs <bskeggs@redhat.com>
      312d1d5f
    • Ben Skeggs's avatar
      bb9b18a3
    • Marcin Slusarz's avatar
      drm/nouveau: properly handle pushbuffer check failures · 7fa0cba2
      Marcin Slusarz authored
      When "buffer in list" check does not pass, don't free validation lists - they were
      not initialized yet.
      
      Fixes this oops:
      
      [drm] nouveau 0000:02:00.0: push 105 buffer not in list
      BUG: unable to handle kernel NULL pointer dereference at 000000000000057c
      IP: [<ffffffff81236aa4>] do_raw_spin_lock+0x14/0x13c
      PGD 1ac6cb067 PUD 1aaa52067 PMD 0
      CPU 0
      Modules linked in: nouveau ttm drm_kms_helper snd_hda_codec_realtek snd_hda_intel snd_hda_codec
      
      Pid: 6265, comm: OilRush_x86 Not tainted 2.6.38-rc6-nv+ #632 System manufacturer System Product Name/P6T SE
      RIP: 0010:[<ffffffff81236aa4>]  [<ffffffff81236aa4>] do_raw_spin_lock+0x14/0x13c
      (...)
      Process OilRush_x86 (pid: 6265, threadinfo ffff8801a6aee000, task ffff8801a26c0000)
       0000000000000000 ffff8801ac74c618 0000000000000000 0000000000000578
       0000000000000000 ffff8801ac74c618 0000000000000000 ffff8801bd9d0000
       [<ffffffff81417f78>] _raw_spin_lock+0x1e/0x22
       [<ffffffffa00a2746>] nouveau_bo_fence+0x2e/0x60 [nouveau]
       [<ffffffffa00a540b>] validate_fini_list+0x35/0xeb [nouveau]
       [<ffffffffa00a54d3>] validate_fini+0x12/0x31 [nouveau]
       [<ffffffffa00a6386>] nouveau_gem_ioctl_pushbuf+0xe94/0xf6b [nouveau]
       [<ffffffff8141ac56>] ? sub_preempt_count+0x9e/0xb2
       [<ffffffff81417e94>] ? _raw_spin_unlock_irqrestore+0x30/0x4d
       [<ffffffff8105dea2>] ? __wake_up+0x3f/0x48
       [<ffffffff812aebb4>] drm_ioctl+0x289/0x361
       [<ffffffff8141ac56>] ? sub_preempt_count+0x9e/0xb2
       [<ffffffffa00a54f2>] ? nouveau_gem_ioctl_pushbuf+0x0/0xf6b [nouveau]
       [<ffffffff8141ac56>] ? sub_preempt_count+0x9e/0xb2
       [<ffffffffa010caa2>] nouveau_compat_ioctl+0x16/0x1c [nouveau]
       [<ffffffff81142c0d>] compat_sys_ioctl+0x1c8/0x12d7
       [<ffffffff814179ca>] ? trace_hardirqs_off_thunk+0x3a/0x6c
       [<ffffffff81058099>] sysenter_dispatch+0x7/0x30
       [<ffffffff8141798e>] ? trace_hardirqs_on_thunk+0x3a/0x3c
      RIP  [<ffffffff81236aa4>] do_raw_spin_lock+0x14/0x13c
       RSP <ffff8801a6aefb88>
      ---[ end trace 0014d5d93e6147e1 ]---
      
      Additionally, don't call validate_fini twice in case of validation failure.
      Signed-off-by: default avatarMarcin Slusarz <marcin.slusarz@gmail.com>
      Signed-off-by: default avatarMaarten Maathuis <madman2003@gmail.com>
      Signed-off-by: default avatarBen Skeggs <bskeggs@redhat.com>
      7fa0cba2
    • Ben Skeggs's avatar
      drm/nvc0: remove vm hack forcing large/small pages to not share a PDE · b84f30e6
      Ben Skeggs authored
      Appears to be fixed with commit:
      
      "drm/nv50-nvc0: make sure vma is definitely unmapped when destroying bo"
      Signed-off-by: default avatarBen Skeggs <bskeggs@redhat.com>
      b84f30e6
  2. 04 Mar, 2011 2 commits
  3. 03 Mar, 2011 17 commits
  4. 01 Mar, 2011 4 commits
  5. 28 Feb, 2011 1 commit
  6. 27 Feb, 2011 1 commit
  7. 25 Feb, 2011 1 commit
    • Dave Airlie's avatar
      Merge branch 'drm-nouveau-next' of... · dc87eaf1
      Dave Airlie authored
      Merge branch 'drm-nouveau-next' of git://anongit.freedesktop.org/git/nouveau/linux-2.6 into drm-next
      
      * 'drm-nouveau-next' of git://anongit.freedesktop.org/git/nouveau/linux-2.6: (50 commits)
        drm/nv50: flesh out ZCULL init and match nvidia on later chipsets
        drm/nv50: support for compression
        drm/nv50-nvc0: delay GART binding until move_notify time
        drm/nouveau: rename nouveau_vram to nouveau_mem
        drm/nvc0: allow creation of buffers with any non-compressed memtype
        drm/nv50-nvc0: unmap buffers from the vm when they're evicted
        drm/nv50-nvc0: move vm bind/unbind to move_notify hook
        drm/nv50-nvc0: restrict memtype to those specified at creation time
        drm/nouveau: pass domain rather than ttm flags to gem_new()
        drm/nv50: simplify bo moves now that they're all through the vm
        drm/nouveau: remove no_vm/mappable flags from nouveau_bo
        drm/nouveau: Fix pageflip event
        drm/nouveau/vbios: parse more gpio tag bits from connector table
        drm/nouveau: decode PFIFO DMA_PUSHER error codes
        drm/nv50: fix typos in CCACHE error reporting
        drm/nvc0: support for sw methods + enable page flipping
        drm/nv50: enable page flipping
        drm/nv50-nvc0: activate/update ds channel's framebuffer on modesets
        drm/nv50-nvc0: initialise display sync channels
        drm/nv50-nvc0: precalculate some fb state when creating them
        ...
      dc87eaf1
  8. 24 Feb, 2011 8 commits