1. 16 Mar, 2018 2 commits
    • Lukas Wunner's avatar
      drm/nouveau/bl: Fix oops on driver unbind · 76f2e2bc
      Lukas Wunner authored
      Unbinding nouveau on a dual GPU MacBook Pro oopses because we iterate
      over the bl_connectors list in nouveau_backlight_exit() but skipped
      initializing it in nouveau_backlight_init().  Stacktrace for posterity:
      
          BUG: unable to handle kernel NULL pointer dereference at 0000000000000010
          IP: nouveau_backlight_exit+0x2b/0x70 [nouveau]
          nouveau_display_destroy+0x29/0x80 [nouveau]
          nouveau_drm_unload+0x65/0xe0 [nouveau]
          drm_dev_unregister+0x3c/0xe0 [drm]
          drm_put_dev+0x2e/0x60 [drm]
          nouveau_drm_device_remove+0x47/0x70 [nouveau]
          pci_device_remove+0x36/0xb0
          device_release_driver_internal+0x157/0x220
          driver_detach+0x39/0x70
          bus_remove_driver+0x51/0xd0
          pci_unregister_driver+0x2a/0xa0
          nouveau_drm_exit+0x15/0xfb0 [nouveau]
          SyS_delete_module+0x18c/0x290
          system_call_fast_compare_end+0xc/0x6f
      
      Fixes: b53ac1ee ("drm/nouveau/bl: Do not register interface if Apple GMUX detected")
      Cc: stable@vger.kernel.org # v4.10+
      Cc: Pierre Moreau <pierre.morrow@free.fr>
      Signed-off-by: default avatarLukas Wunner <lukas@wunner.de>
      Signed-off-by: default avatarBen Skeggs <bskeggs@redhat.com>
      76f2e2bc
    • Māris Nartišs's avatar
      drm/nouveau/mmu: ALIGN_DOWN correct variable · da5e45e6
      Māris Nartišs authored
      Commit 7110c89bb8852ff8b0f88ce05b332b3fe22bd11e ("mmu: swap out round
      for ALIGN") replaced two calls to round/rounddown with ALIGN/ALIGN_DOWN,
      but erroneously applied ALIGN_DOWN to a different variable (addr) and left
      intended variable (tail) not rounded/ALIGNed.
      
      As a result screen corruption, X lockups are observable. An example of kernel
      log of affected system with NV98 card where it was bisected:
      
      nouveau 0000:01:00.0: gr: TRAP_M2MF 00000002 [IN]
      nouveau 0000:01:00.0: gr: TRAP_M2MF 00320951 400007c0 00000000 04000000
      nouveau 0000:01:00.0: gr: 00200000 [] ch 1 [000fbbe000 DRM] subc 4 class 5039
      mthd 0100 data 00000000
      nouveau 0000:01:00.0: fb: trapped read at 0040000000 on channel 1
      [0fbbe000 DRM]
      engine 00 [PGRAPH] client 03 [DISPATCH] subclient 04 [M2M_IN] reason 00000006
      [NULL_DMAOBJ]
      
      Fixes bug 105173 ("[MCP79][Regression] Unhandled NULL pointer dereference in
      nvkm_object_unmap since kernel 4.15")
      https://bugs.freedesktop.org/show_bug.cgi?id=105173
      
      Fixes: 7110c89bb885 ("mmu: swap out round for ALIGN ")
      Tested-by: default avatarPierre Moreau <pierre.morrow@free.fr>
      Reviewed-by: default avatarPierre Moreau <pierre.morrow@free.fr>
      Signed-off-by: default avatarMaris Nartiss <maris.nartiss@gmail.com>
      Signed-off-by: default avatarBen Skeggs <bskeggs@redhat.com>
      Cc: stable@vger.kernel.org # v4.15+
      da5e45e6
  2. 16 Feb, 2018 1 commit
  3. 02 Feb, 2018 19 commits
  4. 01 Feb, 2018 2 commits
  5. 31 Jan, 2018 1 commit
  6. 25 Jan, 2018 2 commits
    • Dave Airlie's avatar
      Merge tag 'drm-misc-next-fixes-2018-01-18' of... · 559f17be
      Dave Airlie authored
      Merge tag 'drm-misc-next-fixes-2018-01-18' of git://anongit.freedesktop.org/drm/drm-misc into drm-next
      
      Fixes for 4.16:
      
      Fixes one Kconfig issue and a enable some panels to work properly.
      There is also a fix of error code return in sun4i.
      
      * tag 'drm-misc-next-fixes-2018-01-18' of git://anongit.freedesktop.org/drm/drm-misc:
        drm: Fix PANEL_ORIENTATION_QUIRKS breaking the Kconfig DRM menuconfig
        drm/panel: lvds: Handle the optional regulator case properly
        drm/sun4i: Fix error code in sun4i_tcon_bind()
      559f17be
    • Dave Airlie's avatar
      Merge branch 'drm-next-4.16' of git://people.freedesktop.org/~agd5f/linux into drm-next · 22bc72c8
      Dave Airlie authored
       A few more fixes for 4.16, nothing major.
      
      A few more fixes for 4.16.  This is on top of the pull request from
      last week.  Most notable change here is a fix to the link order for
      the now separate from amdgpu GPU scheduler to fix crashes when the
      modules are build into the kernel rather than as modules.
      
      * 'drm-next-4.16' of git://people.freedesktop.org/~agd5f/linux:
        drm: fix gpu scheduler link order
        drm/amd/display: Demote error print to debug print when ATOM impl missing
        drm/amdgpu: Avoid leaking PM domain on driver unbind (v2)
        drm/amd/amdgpu: Add Polaris version check
        drm/amdgpu: Reenable manual GPU reset from sysfs
        drm/amdgpu: disable MMHUB power gating on raven
        drm/ttm: Don't unreserve swapped BOs that were previously reserved
        drm/ttm: Don't add swapped BOs to swap-LRU list
        drm/amdgpu: only check for ECC on Vega10
        drm/amd/powerplay: Fix smu_table_entry.handle type
        drm/ttm: add VADDR_FLAG_UPDATED_COUNT to correctly update dma_page global count
        drm/radeon: fill in rb backend map on evergreen/ni.
        drm/amdgpu/gfx9: fix ngg enablement to clear gds reserved memory (v2)
        drm/ttm: only free pages rather than update global memory count together
        drm/amdgpu: fix CPU based VM updates
        drm/amdgpu: fix typo in amdgpu_vce_validate_bo
        drm/amdgpu: fix amdgpu_vm_pasid_fault_credit
        drm/ttm: check the return value of register_shrinker
        drm/radeon: fix sparse warning: Should it be static?
      22bc72c8
  7. 24 Jan, 2018 2 commits
  8. 23 Jan, 2018 4 commits
  9. 19 Jan, 2018 1 commit
  10. 18 Jan, 2018 6 commits