1. 31 Mar, 2010 9 commits
    • Chris Wilson's avatar
      drm: Return ENODEV if the inode mapping changes · da584058
      Chris Wilson authored
      Replace a BUG_ON with an error code in the event that the inode mapping
      changes between calls to drm_open. This may happen for instance if udev
      is loaded subsequent to the original opening of the device:
      
      [  644.291870] kernel BUG at drivers/gpu/drm/drm_fops.c:146!
      [  644.291876] invalid opcode: 0000 [#1] SMP
      [  644.291882] last sysfs file: /sys/kernel/uevent_seqnum
      [  644.291888]
      [  644.291895] Pid: 7276, comm: lt-cairo-test-s Not tainted 2.6.34-rc1 #2 N150/N210/N220             /N150/N210/N220
      [  644.291903] EIP: 0060:[<c11c70e3>] EFLAGS: 00210283 CPU: 0
      [  644.291912] EIP is at drm_open+0x4b1/0x4e2
      [  644.291918] EAX: f72d8d18 EBX: f790a400 ECX: f73176b8 EDX: 00000000
      [  644.291923] ESI: f790a414 EDI: f790a414 EBP: f647ae20 ESP: f647adfc
      [  644.291929]  DS: 007b ES: 007b FS: 00d8 GS: 0033 SS: 0068
      [  644.291937] Process lt-cairo-test-s (pid: 7276, ti=f647a000 task=f73f5c80 task.ti=f647a000)
      [  644.291941] Stack:
      [  644.291945]  00000000 f7bb7400 00000080 f6451100 f73176b8 f6479214 f6451100 f73176b8
      [  644.291957] <0> c1297ce0 f647ae34 c11c6c04 f73176b8 f7949800 00000000 f647ae54 c1080ac5
      [  644.291969] <0> f7949800 f6451100 00000000 f6451100 f73176b8 f6452780 f647ae70 c107d1e6
      [  644.291982] Call Trace:
      [  644.291991]  [<c11c6c04>] ? drm_stub_open+0x8a/0xb8
      [  644.292000]  [<c1080ac5>] ? chrdev_open+0xef/0x106
      [  644.292008]  [<c107d1e6>] ? __dentry_open+0xd4/0x1a6
      [  644.292015]  [<c107d35b>] ? nameidata_to_filp+0x31/0x45
      [  644.292022]  [<c10809d6>] ? chrdev_open+0x0/0x106
      [  644.292030]  [<c10864e2>] ? do_last+0x346/0x423
      [  644.292037]  [<c108789f>] ? do_filp_open+0x190/0x415
      [  644.292046]  [<c1071eb5>] ? handle_mm_fault+0x214/0x710
      [  644.292053]  [<c107d008>] ? do_sys_open+0x4d/0xe9
      [  644.292061]  [<c1016462>] ? do_page_fault+0x211/0x23f
      [  644.292068]  [<c107d0f0>] ? sys_open+0x23/0x2b
      [  644.292075]  [<c1002650>] ? sysenter_do_call+0x12/0x26
      [  644.292079] Code: 89 f0 89 55 dc e8 8d 96 0a 00 8b 45 e0 8b 55 dc 83 78 04 01 75 28 8b 83 18 02 00 00 85 c0 74 0f 8b 4d ec 3b 81 ac 00 00 00 74 13 <0f> 0b eb fe 8b 4d ec 8b 81 ac 00 00 00 89 83 18 02 00 00 89 f0
      [  644.292143] EIP: [<c11c70e3>] drm_open+0x4b1/0x4e2 SS:ESP 0068:f647adfc
      [  644.292175] ---[ end trace 2ddd476af89a60fa ]---
      Signed-off-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
      Cc: stable@kernel.org
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      da584058
    • Pauli Nieminen's avatar
      drm/radeon/kms: Fix NULL pointer dereference if memory allocation failed. · fcbc451b
      Pauli Nieminen authored
      When there is allocation failure in radeon_cs_parser_relocs parser->nrelocs
      is not cleaned. This causes NULL pointer defeference in radeon_cs_parser_fini
      when clean up code is trying to loop over the relocation array and free the
      objects.
      
      Fix adds a check for a possible NULL pointer in clean up code.
      Signed-off-by: default avatarPauli Nieminen <suokkos@gmail.com>
      Cc: stable@kernel.org
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      fcbc451b
    • Jerome Glisse's avatar
      drm/radeon/kms: avoid possible oops (call gart_fini before gart_disable) · f9274562
      Jerome Glisse authored
      radeon_gart_fini might call GART unbind callback function which
      might try to access GART table but if gart_disable is call first
      the GART table will be unmapped so any access to it will oops.
      Signed-off-by: default avatarJerome Glisse <jglisse@redhat.com>
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      f9274562
    • Dave Airlie's avatar
      drm/radeon/kms: don't print error on -ERESTARTSYS. · 97f23b3d
      Dave Airlie authored
      We can get this if the user moves the mouse when we are waiting to move
      some stuff around in the validate. Don't fail.
      
      Cc: stable@kernel.org
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      97f23b3d
    • Alex Deucher's avatar
      drm/radeon/kms/atom: make sure tables are valid (v2) · a084e6ee
      Alex Deucher authored
      Check that atom cmd and data tables are valid
      before using them.
      
      (v2)
      - fix some whitespace errors noticed by Rafał Miłecki
      - check a few more cases
      Signed-off-by: default avatarAlex Deucher <alexdeucher@gmail.com>
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      a084e6ee
    • Alex Deucher's avatar
      drm/radeon/kms: remove lvds quirks · c1bcad9d
      Alex Deucher authored
      - no longer needed with the latest new pll algo fixes.
      - also don't use lcd pll limits.  They don't seem
      to work well for all systems.  If we have a case where
      they are useful, we can set the flag for that case.
      
      fixes fdo bug 27083
      Signed-off-by: default avatarAlex Deucher <alexdeucher@gmail.com>
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      c1bcad9d
    • Alex Deucher's avatar
      drm/radeon/kms: fix display bandwidth setup on rs4xx · b2f8ccd8
      Alex Deucher authored
      I missed rs4xx in 7f1e613daf0fdd0884316ab25a749db3c671329e
      
      Fixes fdo bug 27219.
      Signed-off-by: default avatarAlex Deucher <alexdeucher@gmail.com>
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      b2f8ccd8
    • Alex Deucher's avatar
      drm/radeon/kms: never treat rs4xx as AGP · f95df9ca
      Alex Deucher authored
      RS4xx+ IGP chips use an internal gart, however,
      some of them have the agp cap bits set in their pci
      configs.  Make sure to clear the AGP flag as AGP will
      not work with them.
      
      Should fix fdo bug 27225
      Signed-off-by: default avatarAlex Deucher <alexdeucher@gmail.com>
      cc: stable@kernel.org
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      f95df9ca
    • Alex Deucher's avatar
      drm/radeon/kms: display watermark fixes · f47299c5
      Alex Deucher authored
      - rs780/880 were using the wrong bandwidth functions
      - convert r1xx-r4xx to use the same pm sclk/mclk structs as
      r5xx+
      - move bandwidth setup to a common function
      Signed-off-by: default avatarAlex Deucher <alexdeucher@gmail.com>
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      f47299c5
  2. 30 Mar, 2010 5 commits
  3. 15 Mar, 2010 21 commits
  4. 14 Mar, 2010 5 commits